Решено: cpp print map

Последна актуализация: 09/11/2023
Автор: C SourceTrail

C + + е език за програмиране с общо предназначение, който се използва широко поради своята простота и ефективност. Една от основните характеристики на C++ е Standard Template Library (STL), която предоставя няколко общи класа и функции, които могат да се използват за манипулиране на структури от данни и алгоритми. Сред тях а карта е важен асоциативен контейнер, който съхранява елементи, образувани от комбинация от ключова стойност и картографирана стойност. В тази статия ще се потопим дълбоко в това как да отпечатате карта в C++, като използвате различни методологии.

Разбиране на C++ Maps

Картата в C++ е структура от данни, която сдвоява елементи. Всеки елемент има a ключ и стойност. Ключът се използва за идентифициране на елемента, а стойността е данните. Картата съхранява елементите по начин, по който може ефективно да локализира всеки елемент по неговия ключ. За да използваме карти, включваме библиотеката .

  • Картите обикновено се изпълняват като червено-черни дървета.
  • Те са по-ефективни при достъпа до елементите с ключове поради тяхната дървовидна структура.

Отпечатване на карта в C++

Най-лесният начин да отпечатате карта в C++ е да използвате итератор. Итераторът е указател, който сочи към елемент в контейнера, в този случай картата.

#include
#include

int main () {

std::map моята_карта;

my_map[1] = “ябълка”;
my_map[2] = “банан”;
my_map[3] = “череша”;

std::map::итератор го;

for(it = my_map.begin(); it != my_map.end(); it++)
{
std::cout << it->first << "->” << it->second << 'n'; } return 0; } [/code] В този код:

  • Първо включваме необходимите библиотеки, т.е. за основни входно-изходни операции и за операции с карти.
  • Ние декларираме карта с име „my_map“ с „int“ като тип ключ и „std::string“ като тип стойност.
  • Вмъкваме някои елементи в картата.
  • Ние декларираме итератор 'it' за картата.
  • След това изпълняваме цикъл, започвайки от първия елемент на картата до нейния край. Във всяка итерация ние отпечатваме ключа и стойността на текущия елемент, посочен от итератора.

Автоматична ключова дума и диапазон, базирани на цикъл for

Има по-сбит начин за отпечатване на карти в C++. От C++11 бяха въведени автоматична ключова дума и базирани на диапазон for цикли, които правят синтаксиса по-четлив и чист.

#include
#include

int main () {

std::map моята_карта;

my_map[1] = “ябълка”;
my_map[2] = “банан”;
my_map[3] = “череша”;

for(const auto &pair: my_map)
{
std::cout << pair.first << "->” << pair.second << 'n'; } return 0; } [/code] В горния код използваме ключовата дума auto, за да позволим на компилатора да определя типа на променливата и цикълът for, базиран на диапазон, автоматично итерира върху елементите на картата, присвоявайки всяка двойка ключ-стойност на „двойка" във всяка итерация. Това намалява необходимостта от ръчно инициализиране и увеличаване на итератора, както в предишния метод.

Заключение (по избор)

Концепцията за карти в C++ е широко използвана и разбирането как да се отпечата карта е важно упражнение за овладяване на езика. Могат да се извършват различни операции, като се използват карти и свързаните с тях функции, но възможността за тяхното ефективно и точно показване е от решаващо значение при отстраняване на грешки, наблюдение и разработване на приложения в C++. Споменатите тук примери и методи са най-често срещаните и стандартни подходи за отпечатване на карта на този мощен език.

Сега, след като разгледахме подробно методите за отпечатване на карта в C++, в следващите статии ще се съсредоточим върху други практически приложения и функции на STL в езика C++. Продължавайте да изследвате и приятно кодиране!

Литература:

– [https://www.cplusplus.com/reference/map/map/]
– [https://www.geeksforgeeks.org/map-associative-containers-the-c-standard-template-library-stl/]
– [https://en.cppreference.com/w/cpp/language/auto]
– [https://en.cppreference.com/w/cpp/language/range-for]

ЗАБЕЛЕЖКА: Заменете [ и ] с '<' и '>' съответно за HTML тагове в кодовата част.

Подобни публикации:

Оставете коментар