Zwracaj tablicę z funkcji C ++

Zwracaj tablicę z funkcji C ++

Tablice przechowują dane tego samego typu w kolejnej lokalizacji pamięci. Funkcje rozbijają większe problemy na mniejsze fragmenty, aby ułatwić programistom kodowanie. Kolejną zaletą korzystania z funkcji jest to, że kod wygląda prezentowalnie i czysty. Czasami potrzebujemy funkcji, która zwraca tablicę, abyśmy mogli wykorzystać tę tablicę w innych funkcjach. Następnie pojawia się koncepcja funkcji powrotu tablicy w C++. Jest to funkcja, która zwraca tablicę do innej funkcji. W tym samouczku wskazów Linux pokażemy z przykładami, jak zwrócić tablice z funkcji, które piszesz w języku C ++.

Metody:

Aby zwrócić pełną tablicę na pojedynczym wywołaniu funkcji, nie jest możliwe. Robimy to z różnymi technikami. Istnieją trzy metodologie w C ++, aby zwrócić tablicę z funkcji. Wyjaśnimy je wszystkie po drugim za pomocą kodów.

Zwróć tablicę z funkcji za pomocą:

  • Wskaźniki
  • Struktura
  • STD :: tablica

Wskaźniki

Wskaźniki w dowolnym języku programowania są używane do przechowywania adresu pamięci innej lokalizacji pamięci. Wskaźniki są również używane do przekazywania jednej funkcji do innej funkcji. Dzięki temu możemy przekazać dane tablicy do innych funkcji.

W wskazówkach istnieją również dwa podejścia do zwrócenia tablicy z funkcji:

  • Dynamicznie przydzielona tablica
  • Statycznie przydzielona tablica

Struktura

Struktury są wykorzystywane do przechowywania różnych typów danych. Wewnątrz struktur możemy przechowywać tablicę i stworzyć instancję tej struktury. W ten sposób możemy zwrócić tablicę. Możemy zrobić więcej niż jedną instancję struktury, aby uzyskać dostęp do tablicy przechowywanej w strukturze.

STD :: tablica

To kolejna funkcja, która służy do zwrócenia tablicy z funkcji w C++. Zapewnia również dwie metody - jedna to rozmiar (), a drugi jest pusty (). Std :: tablica, możemy powiedzieć, to szablon struktur. Ale dwie metody, które zapewnia, są punktem plus użycia tej funkcji, aby uzyskać tablicę z dowolnej funkcji. Ta funkcja jest rzadko używana; Często używamy wskaźników i struktury.

Przykład 1:

Teraz, aby wyjaśnić, w jaki sposób możemy użyć wskazówek do zwrócenia tablicy dynamicznej z funkcji, spójrz na następujący kod:

#włączać
za pomocą przestrzeni nazw Std;
char* znak_funta ()

char* array_0 = nowy char [3];
array_0 [0] = 'a';
array_0 [1] = 'b';
array_0 [2] = 'c';
return array_0;

int main ()

char* p = charakter_func ();
Cout<< "The character array is ";
Cout <<"\t"<< p[0] << " " << p[1]<< " " << p[2];
powrót 0;


Po ogłoszeniu biblioteki zdefiniuj funkcję Charter_Func (), aby przechowywać w niej tablicę. Funkcja jest funkcją typu return. Typ powrotu to „char”, który zwraca tablicę znaków. Char* mówi, że wskaźnikiem jest przechowywanie danych typu znaku. W tej funkcji zadeklaruj tablicę wskaźnika do przechowywania tablicy postaci. Rozmiar tablicy to 3. Następnie tablica jest inicjowana przez numer indeksu i zwraca zmienną tablicy. Przechowujemy tablicę postaci w „Array_0”. W metodzie Main () Utwórz wskaźnik „P” typu znaku i przechowuj w nim Charter_Func (). Oznacza to, że za pomocą tego wskaźnika „P” możemy uzyskać dostęp do elementów w Character_Func (). Następnie pokaż wiadomość na terminalu z „cout<<” statement. Similarly, print the array components by accessing them with the pointer “p” from the return type function. Cout<< “\t” leaves a tab space, <

Przykład 2:

Tutaj wykorzystujemy wskaźniki do zwrócenia tablicy statycznej z funkcji.

#włączać
za pomocą przestrzeni nazw Std;
float* floating_func ()

static Float Array_1 [2];
array_1 [0] = 3.5;
array_1 [1] = 5.7;
return array_1;

int main ()

float* wskaźnik = floating_func ();
Cout<<"\n\t The floating point static array is ";
Cout <<"\t"<< pointer[0] << "\t" << pointer[1]<powrót 0;


W tym przykładzie weźmy funkcję wskaźnika powrotu typu zmiennoprzecinkowego, która zwraca tablicę zmiennoprzecinkowego. W ramach funkcji Floating_Func () zainicjuj tablicę punktu zmiennoprzecinkowego - „Array_1” - rozmiaru 2. Tutaj używamy słowa kluczowego „statycznego”, aby ustawić zmienną jako zmienną lokalną, do której można uzyskać dostęp poza funkcją. Teraz zadeklaruj tablicę i zwraca zmienną tablicy. W funkcji Main () zdefiniuj wskaźnik zmiennoprzecinkowy i przypisz do niej funkcję Floating_Func (). Następnie przedstaw wiadomość na ekranie. Za pomocą wskaźnika możemy teraz uzyskać dostęp do wszystkich elementów funkcji typu return. Pokaż elementy tablicy, wywołując wskaźnik. Wskaźnik wchodzi do funkcji i dostaje tablicę, którą ustawiliśmy jako powrót. Zastosuj instrukcję „zwrot 0”, aby zakończyć kod.

Przykład 3:

W tym ostatnim przypadku zwracamy tablicę z funkcji za pomocą struktur.

#włączać
za pomocą przestrzeni nazw Std;
struct arr
int a [5];
;
struct arr_func ()

struct arr val;
val.a [0] = 5;
val.a [1] = 67;
val.a [2] = 98;
val.a [3] = 77;
val.a [4] = 55;
powrót val;

int main ()

struct ard = arr_func ();
Cout<<"\n\tThe array is \n";
dla (int i = 0; i<5; i++)

Cout <<"\t"<< val.a[i]<
powrót 0;


Zdefiniuj strukturę „ARR” za pomocą słowa kluczowego „struct”. W tej strukturze zainicjuj szereg rozmiaru 5. Następnie deklarujemy różne zmienne i uzyskujemy do nich dostęp do nazwy struktury, aby używać ich w funkcjach. Teraz utwórz strukturę funkcjonalną arr_func (), aby zainicjować tablicę. Aby to zrobić, zdefiniuj „strukturę”, aby nazwać zmienną „VAL”. Zmienna „VAL” uzyskuje dostęp do lokalizacji tablicy „struct” i przechowuje wartość w niej. Wszystkie elementy tablicy są teraz przechowywane w „Val”. W metodzie main () utwórz instancję „struct” i przypisz do niej funkcję arr_func (). Wydrukuj tekst „tablica to” na konsoli, nazywając „cout<<”. To print the array, we utilize the “for” loop. Set the “for” to iterate 5 times. Insert the statement inside the curly braces so that we get the items of the array. Outside the loop, pass the “return 0” statement.

Wniosek

W tym artykule ilustruje, jak zwrócić tablicę z funkcji w C++. Tablicę można zwrócić z funkcji z trzema różnymi podejściami. Każda metodologia jest szczegółowo wyjaśniona, zgodnie z przykładem kodowania. Wszystko jest adresowane od samego początku, w tym wykorzystanie wskaźników i ich typów, użycie struktur i funkcji Std :: tablica. C ++ nie ma wbudowanych metod, takich jak inne języki, więc musimy zrobić wszystko na własną rękę. C ++ jest najlepszy dla początkujących, aby zrozumieć podstawy kodowania.