Kod

Podstawy tablic w C++: deklarowanie i praca z tablicami jednowymiarowymi i dwuwymiarowymi

Podstawy tablic C++: deklarowanie i praca z tablicami jednowymiarowymi i dwuwymiarowymi

Naucz się Pythona bez wydawania pieniędzy ➞ Krótki kurs dla początkujących i doświadczonych programistów. Cztery ciekawe projekty w Twoim portfolio i możliwość komunikacji z prowadzącym. Dowiedz się, co Cię czeka na kursie.

Dowiedz się więcej

Ten artykuł jest siódmym z serii publikacji zatytułowanej „Deep Dive into C++”. W poprzednim artykule omówiliśmy, jak używać pętli while, do-while i for do uproszczenia kodu. Teraz skupimy się na tablicach.

Tablica to zbiór komórek pamięci ułożonych sekwencyjnie. Służy do wygodnego przechowywania jednorodnych informacji, takich jak pensje pracowników, współrzędne postaci w grze, oceny uczniów i inne podobne dane.

Powyższy obraz przedstawia deklarację tablicy składającej się z czterech elementów typu integer. Nawet jeśli elementom nie przypisano jeszcze wartości, tablica nadal będzie zajmować przestrzeń odpowiadającą czterem zmiennym. W tym konkretnym przypadku jej rozmiar wyniesie 16 bajtów.

Tablice to bardzo wydajne i szybkie narzędzie, ponieważ sekwencyjne ułożenie elementów przyspiesza przetwarzanie informacji w nich zawartych.

Metody tworzenia tablic w C++

Istnieje kilka metod tworzenia tablic:

Indeksowanie tablic rozpoczyna się od zera, a nie od jednego. Długość tablicy jest zachowywana w standardowym formacie. Na przykład, jeśli tablica składa się z dziesięciu elementów, indeks ostatniego elementu będzie wynosił 9.

Uwaga! Tablice są niezmienne, co oznacza, że ​​nie można ich modyfikować. Można zmieniać wartości poszczególnych elementów, ale sama tablica pozostaje niezmienna – jej długości nie można zmienić ani przypisać wartości jednej tablicy do drugiej.

Ważne jest, aby stale monitorować dostęp do elementów tablicy, aby upewnić się, że nie przekracza się jej limitów. Na przykład, jeśli długość tablicy wynosi 5, dostęp do elementów o indeksach 5, 6, 7 itd. może prowadzić do nieprzewidywalnych konsekwencji.

Ten kod wygeneruje następujący wynik:

W związku z tym wynik będzie się różnić przy każdym nowym dostępie, ponieważ w moment, w którym ta komórka pamięci jest w stanie pomieścić absolutnie dowolną informację.

Efektywne metody pracy z tablicami w C++

Aby uzyskać dostęp do dowolnego elementu tablicy, należy użyć jego indeksu. Ta metoda dobrze sprawdza się, gdy trzeba wyodrębnić jedną lub dwie wartości. Jednak gdy zachodzi konieczność iteracji po całej tablicy, bardziej efektywne jest użycie pętli:

W tym kontekście manipulowana jest każda komórka tablicy, a iterator (zmienna i) pełni rolę indeksu.

Pętle umożliwiają również przeszukiwanie tablicy. Na przykład możesz ich użyć do określenia wartości minimalnej lub maksymalnej.

Oto, co jest wyświetlane na wyświetlaczu:

Możesz również użyć wielu tablic do przechowywania powiązanych danych. Na przykład utwórzmy tablicę o nazwie names, która będzie zawierała imiona i nazwiska pracowników, oraz tablicę o nazwie salaries, która będzie zawierała ich pensje.

Oto wynik:

Można użyć uproszczonej formy zapisu pętli for:

W tym przykładzie zmienna nums jest tablicą, a number jest identyfikatorem umożliwiającym dostęp do bieżącego elementu tej tablicy. Na przykład, jeśli jesteśmy w drugiej iteracji pętli, to po wydrukowaniu wartości number zobaczymy element nums[1].

Możesz również wybrać typ danych auto, co pozwoli programowi samodzielnie określić, którą tablicę ma przetwarzać.

Praca z tablicami wielowymiarowymi w C++

Tablice wielowymiarowe to struktury, w których jedna tablica jest zawarta w drugiej. Na przykład dwuwymiarową tablicę często nazywa się macierzą.

Najbardziej oczywistym przykładem macierzy jest mapa dwuwymiarowa. W tym przypadku wiersze odpowiadają osi X, a kolumny – osi Y. Używając takiej tablicy, możesz utworzyć mapę do gry.

Rezultatem jest dość prosta gra:

Możesz również tworzyć tablice o większej liczbie wymiarów, w tym trójwymiarowe, czterowymiarowe itd. Praca z takimi strukturami może być jednak trudna, dlatego najlepiej ograniczać ich użycie do sytuacji, w których jest to naprawdę konieczne. Na przykład może to być istotne podczas tworzenia grafiki 3D.

Wniosek

Tablice są szeroko stosowane w programowaniu, zarówno w tworzeniu gier, jak i w uczeniu maszynowym. Dlatego nauczenie się, jak z nimi pracować, jest niezbędne. W dalszej części omówimy gotowe narzędzia, które mogą znacznie uprościć to zadanie.

Przeczytaj również:

  • C++ w 2021 roku: Zastosowania, przyszłość i kluczowa wiedza na początek

    C++ nadal jest popularnym językiem programowania w wielu dziedzinach. Jest szeroko stosowany w tworzeniu oprogramowania systemowego, sterowników, aplikacji systemów wbudowanych, a także w tworzeniu gier i aplikacji graficznych. Jego wydajność i możliwość pracy z komponentami niskiego poziomu sprawiają, że jest szczególnie atrakcyjny dla programistów pracujących z systemami o dużym obciążeniu.

    Perspektywy dla C++ pozostają pozytywne ze względu na jego powszechne zastosowanie w zaawansowanych technologicznie dziedzinach, takich jak sztuczna inteligencja, uczenie maszynowe i technologie finansowe. Język stale ewoluuje, a nowe standardy, takie jak C++20, dodają nowoczesne funkcje, które upraszczają pisanie kodu i poprawiają jego bezpieczeństwo.

    Dla osób chcących rozpocząć przygodę z C++ ważne jest opanowanie podstaw składni języka, a także zrozumienie koncepcji programowania obiektowego. Znajomość standardowej biblioteki C++ oraz umiejętność korzystania z popularnych frameworków i narzędzi programistycznych również będą przydatne. Początkujący programiści powinni skupić się na praktycznych projektach i zadaniach, które pomogą utrwalić wiedzę teoretyczną i rozwinąć umiejętności programistyczne.

  • Najpierw środek, potem siedem cięć: typowe błędy doświadczonych ekspertów IT.
  • Rozpoczęcie programowania w Pythonie: krótki przewodnik.