Разбиране на Typedef структурата в C++
В C++ „typedef“ е ключова дума, която предоставя нови имена на съществуващи вградени типове данни, указатели, структури и дефинирани от потребителя типове данни, които работят като псевдоним в цялата програма. Казано по-просто, той дава описателни имена на вградените или дефинирани от потребителя типове данни, които могат да се обясняват сами по себе си. Той също така помага за намаляване на редовете код и опростяване на сложните типове данни. Въпреки това, както беше споменато по-рано, твърде честото използване на „typedef“ не се препоръчва, защото може да доведе до объркване.
Структурата е друга ключова дума, която се използва за дефиниране и инициализиране на структура. Структурата в C++ е декларация за съставен тип данни, която позволява на разработчиците да групират различни типове данни или променливи на едно място.
В C++ „struct“ и „typedef struct“ са едни и същи. Няма практическа разлика между „typedef struct“ и „struct“, тъй като те работят еднакво. Всеки път, когато клас, enum, обединение или структура са декларирани или дефинирани в C++, не е необходимо имплицитно да се дефинират като „typedef“, защото те са по подразбиране „typedef“.
Синтаксис на Typedef Struct в C++
Синтаксисът на структурата „typedef“ е същият като структурата без „typedef“. Просто се нуждае от изрична дефиниция на „typedef“ с ключовата дума „struct“. Вижте пълния синтаксис в следното:
typedef структура {
< тип_данни > < променлива1 > ;
< тип_данни > < променлива2 > ;
< тип_данни > < променлива3 > ;
} < име_на_структура > ;
Структурата се дефинира сега чрез просто използване на
< име_на_структура > променлива4, променлива5, променлива6 ;
Сега нека разгледаме някои примери за по-ясно и по-добро разбиране на структурата „typedef“ в C++.
Пример 1:
В първия пример на структурата “typedef” в C++, ние вземаме проста програма, за да обясним как тя може да бъде дефинирана и използвана в C++ проекти. Вижте следния код и след това нека преминем към обяснението:
#include
използвайки пространство от имена std ;
структура десетичен знак {
вътр 1 дек ;
вътр дек2 ; } ;
вътр основен ( ) {
структура десетична d ;
д. 1 дек = 10 ;
д. дек2 = 23 ;
cout << д. 1 дек << endl ;
cout << д. дек2 << endl ;
връщане 0 ; }
В този C++ код ние дефинираме десетична структура и демонстрираме нейното използване в основната функция. Нека да разгледаме всеки ред код.
Програмата започва с включване на необходимия заглавен файл като “#include
В основната функция се създава екземпляр на десетичната структура. Това се прави с помощта на 'd;' декларация десетична. Структурата има два члена, така че имаме достъп и до двата с помощта на екземпляра „d“. След това стойностите на „dec1“ и „dec2“ се присвояват съответно с 10 и 23, като се използва дефиницията „d.dec1“ и „d.dec2“. И накрая, стойностите на “dec1” и “dec2” се отпечатват на конзолата с помощта на “cout”. Програмата дава следните резултати:
Дадената изходна моментна снимка показва как проста структура „typedef“, наречена „decimal“, се използва за съхраняване и манипулиране на две десетични числа в рамките на основната функция. Структурата “typedef” позволява по-добра организация и управление на свързаните данни в C++ програма.
Пример 2:
В примера, който обяснихме по-рано, в структурата е даден само един тип данни. Сега нека дефинираме множество типове данни в структура и да видим как „typedef“ може да помогне за намаляване на реда от кодове и опростяване на усложненията на кода. Кодът е даден по-долу за ваша справка:
#includeизползвайки пространство от имена std ;
typedef структура речник {
вътр документ за самоличност ;
име на низ ;
дълго rollnum ;
въглен име на клас ;
} дикт ;
вътр основен ( )
{
dict данни ;
данни. документ за самоличност = двадесет ;
данни. име = 'Kalsoom' ;
данни. rollnum = 123456789 ;
данни. име на клас = 'Д' ;
cout << 'Идентификационният номер на кандидата е = ' << данни. документ за самоличност << endl ;
cout << 'Името на кандидата е = ' << данни. име << endl ;
cout << 'Номерът на кандидата е = ' << данни. rollnum << endl ;
cout << 'Името на класа на кандидата е = ' << данни. име на клас << endl ;
връщане 0 ;
}
Подобно на предишния пример, тази програма също стартира необходимия заглавен файл като “#include
Сега, в главната функция, първо дефинираме екземпляр на структурния речник, наречен „dict“ като данни, които действат като псевдоним на „dict“. Стойностите се присвояват на всеки член на структурата с помощта на следните изрази:
данни. документ за самоличност = двадесет ;данни. име = 'Kalsoom' ;
данни. rollnum = 123456789 ;
данни. име на клас = 'Д' ;
Както можете да видите, тези стойности са от различни типове – int, string, long и char. С помощта на оператора “cout” отпечатваме всички дефинирани стойности на конзолата. Нека видим резултата от програмата в следната моментна снимка:
Изходната екранна снимка ясно демонстрира използването на „typedef“ със структурата, която съдържа множество типове данни за създаване на псевдоним за структура. Той предоставя по-кратък, четим и по-прост начин за работа със структурите в пълната C++ програма.
Заключение
За да обобщим структурата „typedef“ в C++, „typedef“ е ключова дума, която се използва в C++ за създаване на псевдоними на примитивни, вградени или дефинирани от потребителя типове данни. В комбинация с ключовата дума „struct“, „typedef“ е мощен инструмент за подобряване на стегнатостта и яснотата на кода. Дефиницията “typedef” обикновено помага за намаляване на редовете код и областите на паметта. Въпреки това, твърде честото използване на „typedef“ не се препоръчва в нито една програма, нито кратка, нито дълга, и сложни проекти, защото може да създаде неяснота. В тази статия проучихме структурата „typedef“ с помощта на прости примери, за да разберем работата, внедряването и използването на „typedef“ в C++ програми.