Jakie są klasy pojemników c++?

Jakie są klasy pojemników c++?

Klasa kontenera, jak sama nazwa sugeruje, jest używana do zawierania różnych wartości, obiektów i zmiennych itp. w pamięci lub w pamięci zewnętrznej. Klasa kontenerowa obsługuje inne klasy obecne w programach i funkcjonuje w celu ukrycia obiektów/zmiennych używanych w pamięci. Przechowuje wiele przedmiotów, a wszystkie te elementy są łatwo dostępne dla innych członków programu.

Wszystkie klasy kontenerów skutecznie uzyskują dostęp do elementów kontenera za pośrednictwem iteratorów. Ta klasa jest znana z tego, że w pamięci zawiera niektóre podobne i mieszane obiekty. Pojemnik może mieć jednorodny lub heterogeniczny typ. Jeśli pojemnik trzyma mieszane obiekty, jest heterogeniczny, podczas gdy w przypadku podobnych elementów jest znany jako jednorodna klasa kontenera.

Wyjaśnimy tę koncepcję w systemie operacyjnym Linux, więc musisz zainstalować Ubuntu i w formularzu działającym w twoim systemie. Musisz więc zainstalować wirtualne pole i po pobraniu i instalacji skonfiguruj je teraz. Teraz dodaj do niego plik Ubuntu. Możesz uzyskać dostęp do oficjalnej strony internetowej Ubuntu i pobrać plik zgodnie z wymaganiami systemowymi i systemem operacyjnym. Zajmie wiele godzin, a następnie po instalacji, skonfiguruj go na maszynie wirtualnej. W procesie konfiguracji upewnij się, że utworzyłeś użytkownika, ponieważ jest on niezbędny do każdej operacji na terminalu Ubuntu. Ponadto Ubuntu potrzebuje uwierzytelniania użytkownika przed wykonaniem jakiejkolwiek instalacji.

Użyliśmy 20.04 Wersja Ubuntu; Możesz użyć najnowszego. W przypadku implementacji musisz mieć edytor tekstu i musisz mieć dostęp do terminalu Linux, ponieważ będziemy mogli zobaczyć wyjście kodów źródłowych na terminalu przez zapytanie. Użytkownik musi mieć podstawową wiedzę na temat programowania C ++ i obiektowych, aby korzystać z klas w programie.

Klasa kontenerowa/kontener i jej typy

Mówi się, że klasa jest pojemnikiem, gdy jest używana do przechowywania wartości wykorzystywanych przez inne zmienne w tym samym programie. Biblioteka klas GUI ma grupę klas kontenerów. Wskaźniki pojemniki zapewniają pojemniki, które przechowują obiekty przydzielane przez bezpieczny wybór sterty. To użycie klasy kontenerowej ma cel, aby OOP było bardzo łatwe w języku C ++. Odbywa się to, gdy ustalono standardowy zestaw klasy.

Rodzaj relacji między klasami jest znany jako Containership. Klasa zawierająca tego rodzaju związek jest klasą kontenera. Podobnie obiekt jest znany jako obiekt pojemnika.

Standardowe klasy kontenera C ++

Standardowe klasy są opisane w następujący sposób:

  • Std :: mapa: Służy do obsługi tablicy lub rzadkiej macierzy.
  • STD :: wektor: Podobnie jak tablica, klasy kontenerów mają dodatkowe funkcje, takie jak wkładanie i usuwanie elementów, automatycznie zarządzanie pamięcią i wyrzucają wyjątki.
  • STD :: String: To jest szereg znaków.

Składnia kontenership

// klasa, która ma być zawarta
klasa pierwsza
;
// klasa kontenerowa
klasa druga
// tworzenie obiektu jednego
Jeden o;
;

Przykład 1

W tym przykładzie utworzyliśmy klasę kontenera z nazwą drugą. Po pierwsze, biblioteka służy do włączenia pliku do odczytu i zapisu. Pierwsza klasa zawiera funkcję o nazwie wyświetlacz używany do wyświetlania wiadomości, gdy funkcja jest wywoływana. W części publicznej klasy znajduje się konstruktor, który wywołuje funkcję pierwszej klasy, a następnie wyświetlana jest wartość. Te wszystkie kroki można skrócić, wykonując te funkcje w jednej klasie, ale gdy omawiamy koncepcję kontenera, dlatego każda funkcja jest wykonywana osobno w indywidualnej klasie.

# włączać

Wracając do programu, w programie głównym stworzyliśmy obiekt drugiej klasy. Tworząc ten obiekt, druga klasa zostanie automatycznie wywołana, a po wywołaniu zostanie zainicjowana konstruktor, który wywoła pierwszą klasę, a instrukcja zostanie wyświetlona z funkcji.

Aby zobaczyć wynikową wartość kodu, przejdziemy do terminalu Ubuntu. Aby skompilować kod, używamy kompilatora, dla C ++ używamy kompilatora G ++ do kompilacji kodu.

$ G ++ -o con con.C
$ ./kon

Wykonując kod, zobaczysz, że funkcja zostanie wykonana, a instrukcja zostanie wyświetlona.

Przykład 2

Ten przykład przypomina pierwszy, tylko różnica polega na tym, że tym razem nie odziedziczyliśmy pierwszej klasy w drugą, tworząc obiekt. Ale w klasie wyświetlany jest komunikat. Pierwsza klasa ma część publiczną, która zawiera konstruktor bezpośrednio, ale nie funkcję wyświetlania. Dzieje się tak, ponieważ nie jesteśmy gotowi nawiązać relacji pierwszej klasy z drugim. Nie wykonaliśmy wywołania funkcji. Obiekt drugiej klasy jest tworzony w programie głównym.

Ponownie przejdź do terminalu i użyj tego samego polecenia, wyświetli to dwie wiadomości, jedną z pierwszej klasy, a drugie z drugiej klasy. Ten przykład pokazuje, że pojemniki mogą być również używane bez interakcji z innymi funkcjami.

Przykład 3

Teraz w tym przykładzie nie wyświetliśmy po prostu żadnej wiadomości, liczba jest podana w konstruktorze klasy kontenera, a następnie jest wyświetlana w pierwszej klasie. Pierwsza klasa używa zmiennej do zaakceptowania zmiennej i wyświetlania z nią liczby. Używana jest tutaj inna funkcja, która zwraca liczbę. Teraz, idąc do drugiej klasy, konstruktor używa obiektu pierwszej klasy utworzonej w drugiej klasie.

Korzystając z obiektu, wywołuje obie funkcje obecne w pierwszej klasie, funkcję wyświetlania i funkcję GET Number. Funkcja getting liczb () używa liczby i przekazuje ją do funkcji.

# F.getNum () = 50;
# F.wyświetlacz();

Następnie w głównej funkcji, drugi obiekt klasowy jest tworzony tylko. W tworzeniu obiektu drugiej klasy konstruktor drugiej klasy jest automatycznie wykonywany. Po wykonaniu wyniku na terminalu, dowiesz się, że numer, który wprowadziłeś w klasie kontener.

Teraz były to przykłady, których użyliśmy do wyjaśnienia pojęcia klasy kontenera. Istnieje zamieszanie między dziedzictwem a klawiaturą.

W Containership funkcje klasy są w nowej klasie, ale nie w dziedzictwie, podobnie jak ta klasa nie jest klasą dzieci. Na przykład Mobile ma Androida, a ciężarówka ma silnik. Z drugiej strony, w przypadku dziedziczenia, gdy chcemy nowego typu klasy posiadającej cechy klasy podstawowej, jest to dziedzictwo.

Wniosek

Koncepcja klasy kontenerowej wyjaśniono, podając przykłady w systemie operacyjnym Linux poprzez konfigurację Ubuntu. Klasa kontenerowa działa jak typ danych tablicy, który zawiera wartości, które są użyteczne i dostępne przez inne obiekty w tych samych lub różnych przypadkach. Korzystając z klasy kontenerów, użytkownik powinien być świadomy różnicy między dziedzictwem a kontenerowaniem. W danym artykule staraliśmy się opisać podstawy klasy kontenerowej i mamy nadzieję, że ta wiedza jest wystarczająca, aby osiągnąć znak.