c functions methods tutorial with code examples
W tym samouczku wyjaśniono, jakie są funkcje w programowaniu w języku C # za pomocą prostych przykładów. Poznasz także podstawowe różnice między funkcjami i metodami:
W naszym poprzednim samouczku zbadaliśmy wszystko o pętlach w języku C # wraz z ich typami i przykładami.
W tym samouczku skupimy się na funkcjach w języku C # z prostymi przykładami ułatwiającymi zrozumienie.
program do pobierania filmów z dowolnej strony internetowej
=> BEZPŁATNE samouczki szkoleniowe C # dla wszystkich
Czego się nauczysz:
Wprowadzenie do funkcji w C #
W języku C # funkcja jest definiowana jako technika zawijania kodu w celu wykonania określonego zadania, a następnie zwrócenia wartości. Jest zupełnie inny niż jego poprzednie języki programowania, takie jak C czy C ++. Tutaj funkcje nie istnieją same. Funkcje są częścią podejścia OOP.
Funkcja jest członkiem klasy. Jest to to samo, co metoda i czasami oba te terminy są używane zamiennie. Ale jest kilka podstawowych różnic między metodami i funkcjami.
Różnica między metodą a funkcjami
Chociaż oba są podobne pod wieloma względami i językami. Podstawowa różnica między metodami a funkcjami polega na tym, że metoda zawiera void jako typ zwracany, podczas gdy funkcja ma typ zwracany.
Jeśli przyjrzysz się różnicom bez wybierania konkretnego języka programowania, funkcja może być zdefiniowana jako fragment kodu, który ma nazwę i argumenty operacji wymienionych w nawiasach. Cały argument funkcji jest z natury wyraźny.
Z drugiej strony, metoda może być postrzegana jako funkcja, która działa jak obiekt. Jest to plan instancji klasy. Metoda zawsze ma niejawne argumenty.
W tym samouczku ze względu na wygodę będziemy używać zamiennie terminów metody i funkcje.
Funkcje w C #
Funkcja umożliwia programistom zamknięcie fragmentu kodu, a następnie wywołanie tej części kodu z innej części programu. Jest to bardzo przydatne, gdy musisz uruchomić ten sam kod z różnych miejsc.
W języku C # funkcje mają następującą składnię:
() { return; }
Jak omówiliśmy w naszych poprzednich samouczkach, program Access określa, parametry i typy zwracane są opcjonalne. Stwórzmy funkcje z różnymi opcjami.
Funkcja z parametrem, ale bez typu powrotu
Stwórzmy funkcję, podając niektóre parametry bez zwracania czegokolwiek.
class Program { // function without any return type declaration public void square(int nmbr) { int sq = nmbr * nmbr; Console.WriteLine('Square of the given number is ' + sq); // Don’t provide any return statement } public static void Main(string[] args) { Program pr = new Program(); // Creating a class Object pr.square( 2); //calling the method } } }
W powyższym programie utworzyliśmy funkcję „kwadrat”, podając parametr będący liczbą całkowitą, tj. „Nmbr”. Następnie w nawiasie zdefiniowaliśmy fragment kodu bez dostarczania funkcji zwracanego typu. Na koniec stworzyliśmy obiekt klasy i nazwaliśmy funkcję „kwadrat”, przekazując jako argument wartość całkowitą.
Wynik
Kwadrat podanej liczby to 4
Spójrzmy na inny przykład, aby wyjaśnić sprawę.
Funkcja z obydwoma parametrami Ai typ zwrotu
Wprowadźmy pewne zmiany w powyższym przykładzie i dodajmy typ zwracany.
class Program { // function with integer return type declaration public int square(int nmbr) { int sq = nmbr * nmbr; // Lets provide a return statement return sq; } public static void Main(string[] args) { Program pr = new Program(); // Creating a class Object int rslt = pr.square( 2); //Calling the method and assigning the value to an integer type Console.WriteLine('Square of the given number is '+ rslt); //Printing the result } } }
W powyższym programie utworzyliśmy funkcję „square”, podając parametr typu integer, tj. „Nmbr” i zwracaną liczbę całkowitą. Następnie w nawiasie zdefiniowaliśmy fragment kodu, po którym następuje instrukcja return.
j2ee wywiad pytania i odpowiedzi pdf
Wewnątrz funkcji głównej utworzyliśmy obiekt klasy i nazwaliśmy funkcję „kwadrat”, przekazując jako argument wartość całkowitą. Ponieważ jest skojarzony z typem zwracanym, zapisaliśmy funkcję w zmiennej całkowitej. Na koniec wydrukowaliśmy wynik.
Wynik
Kwadrat podanej liczby to 4
C # wywołanie według wartości
W języku programowania C #, gdy wywołujemy funkcję, pobiera ona parametr z funkcji głównej za pomocą obiektu klasy. Następnie obiekt klasy wewnątrz funkcji głównej skopiuje funkcję do wartości parametrów. Kiedy używamy wywołania według wartości, nawet jeśli w metodzie wystąpią pewne zmiany, zmiana ta nie zostanie przeniesiona do oryginalnej zmiennej.
Przykład:
class Program { public void square(int nmbr) { int nmbr = nmbr * nmbr; // Lets provide a return statement Console.WriteLine('Square of the given number is ' + nmbr); } public static void Main(string[] args) { int nmbr = 2; // Value assigned before calling function Program pr = new Program(); // Creating a class Object pr.square( nmbr); //calling the method and assigning the defined integer Console.WriteLine('The given number is ' + nmbr); //printing the value } } }
Tak więc, jeśli wykonamy powyższy program, znajdziemy następujący wynik:
Kwadrat podanej liczby to 4
Podana liczba to 2
Wyjaśnienie
W powyższym przykładzie zdefiniowaliśmy zmienną całkowitą „nmbr” o wartości 2. Następnie wywołaliśmy funkcję square, przekazując zmienną jako argument. Stąd zmienna, którą przekazaliśmy, zamieniła się w swoje zwielokrotnienie (w wyniku działania funkcji) i wypisała wynik.
jacy są różni dostawcy poczty e-mail
W funkcji głównej na końcu wypisujemy zmienną, którą zdefiniowaliśmy wcześniej. Jak widać, nie nastąpiła zmiana wartości zmiennej funkcji (gdzie jest zdefiniowana), ale zmieniła się, gdy przekazaliśmy ją jako argument dla innej funkcji.
Jak omówiliśmy wcześniej, gdy wywołujemy według wartości, każda zmiana, która nastąpi w zmiennej w metodzie, nie zostanie przeniesiona do oryginalnej zmiennej. Stąd, kiedy wykonaliśmy operację drukowania na zmiennej, nadal daje nam ona wcześniej zdefiniowane wyjście.
Wywołanie C # przez odniesienie
C # oferuje słowo kluczowe „ref” do przekazywania argumentu jako typu referencyjnego dla funkcji. W przeciwieństwie do wywołania przez wartość, nie przekazuje zmiennej do funkcji po utworzeniu kopii zmiennej.
Przekazuje odniesienie oryginalnej wartości do funkcji, dlatego każda zmiana, która występuje w wartości odniesienia, jest trwała i jest również odzwierciedlana w wartości oryginalnej.
Skorzystajmy z tego samego przykładu co wcześniej, ale zamiast używać call przez wartość, będziemy używać call by reference:
class Program { public void square(int nmbr) { int nmbr = nmbr * nmbr; // Lets provide a return statement Console.WriteLine('Square of the given number is ' + nmbr); } public static void Main(string[] args) { int nmbr = 2; // Value assigned before calling function Program pr = new Program(); // Creating a class Object pr.square( ref nmbr); //calling by reference using ref keyword Console.WriteLine('The given number is ' + nmbr); //printing the value } } }
Tak więc, jeśli wykonamy program, znajdziemy następujące dane wyjściowe:
Kwadrat podanej liczby to 4
Podana liczba to 4
Wyjaśnienie
W powyższym przykładzie zdefiniowaliśmy zmienną całkowitą „nmbr” o wartości 2. Następnie wywołaliśmy funkcję square, przekazując zmienną jako argument. Tak więc zmienna, którą przekazaliśmy, zamieniła się w swoje zwielokrotnienie (w wyniku operacji wewnątrz funkcji) i wypisała wynik, czyli 4.
W funkcji głównej na końcu wypisujemy zmienną, którą zdefiniowaliśmy wcześniej. Jak widać, nastąpiły zmiany wartości zmiennej w funkcji, w której była ona wskazywana i na której była operowana. Ponieważ funkcja wykonywała operację, a wartość zmiennej zmieniła się na 4, to samo jest odzwierciedlone w danych wyjściowych konsoli.
Jak omówiliśmy wcześniej, gdy wywołujemy przez odniesienie, każda zmiana, która nastąpi w zmiennej w metodzie, zostanie przeniesiona do oryginalnej zmiennej. W związku z tym, gdy wykonaliśmy operację drukowania na zmiennej, wydrukuje ona bieżące wyjście, czyli 4.
Wniosek
W tym samouczku poznaliśmy funkcje w programowaniu w języku C #. Technika zawijania kodu nazywana jest funkcją.
W językach programowania, takich jak C i C ++, funkcja jest zdefiniowana jako fragment kodu z nazwą i argumentami do wykonania operacji opisanej w nawiasach.
Poznaliśmy również podstawową różnicę między funkcjami i metodami oraz przyjrzeliśmy się kilku przykładom, aby wyjaśnić użycie parametrów i typów zwracanych.
=> Sprawdź szczegółowe samouczki szkoleniowe języka C # tutaj
rekomendowane lektury
- Python DateTime Tutorial z przykładami
- Funkcje łańcuchowe w Pythonie
- Samouczek dotyczący głównych funkcji języka Python z praktycznymi przykładami
- Samouczek SVN: Zarządzanie kodem źródłowym przy użyciu Subversion
- Funkcje daty i czasu w C ++ z przykładami
- Samouczek Tortoise SVN: Zmiany w repozytorium kodu
- Samouczek AWS CodeBuild: wyodrębnianie kodu z kompilacji Maven
- Samouczek dotyczący skryptów powłoki Unix z przykładami