Эта статья не охватывает всю тему typedef, а только очень поверхностно ознакамливает читателя с предназначением спецификатора, задающего синонимы названиям типов.
Читатель моего сайта может быть в самом начале своего пути изучения и многие элементы языка ему элементарно неизвестны. Поэтому в этой теме происходит только ознакомление, но не полноценное знакомство со спецификатором typedef.
В С++ можно подменять названия типов удобными себе названиями.
Язык С++ позволяет программистам упрощать сложные названия типов путём создания альтернативных названий. Эта особенность может оказаться вам полезной в будущем.
Для создания альтернативного имени названию любого типа используется ключевое слово typedef
C++
1
2
3
4
5
6
typedefintinteger;//Для int придумано название integer
intmain(){
intx;//int x
integery;//int y
}
Создание альтернативного имени типу — не является созданием нового типа. Это важно. В показанном над картинкой листинге и переменная x, и переменная y имеют тип int. Альтернативные названия чаще всего используют, когда использование оригинального названия сложно воспринимается. Часто просто сокращают длинные названия или делают неудобные названия типов удобными себе.
Создавать альтернативных имён можно сколько угодно.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
typedefintinteger;//Для int придумано название integer
typedefintchislo;//Для int придумано название chislo
intmain(){
intx;//int x
integery;//int y
typedefintnumber;//Для int придумано название number
inta1;//int a1
chislo a2;//int a2
number a3;//int a3
inta3;//Нельзя создать int a3, потому что a3 с типом int уже существует
}
Альтернативные имена называют либо псевдонимами, либо синонимами. Самое обычное жизненное сравнение: официально человек называется, например, Александром, а зовут его потом как угодно неофициально: Саша, рыжий, поварёнок… Т. е. официальному имени придумываются альтернативы и используются иногда по приколу, иногда чтобы не путать тёзок, иногда просто потому что трудно выговорить оригинальное имя. Вот и всё. Таким образом сколько бы вы альтернативных имён не напридумывали для названий типу, компилятором будет использовано только официальное имя. Альтернативы вы придумываете для себя.
Первое используемое название типа стоит считать официальным. Как бы вы его не обозвали потом, это название будет основным. Любые иные названия этого же типа сводятся к официальному названию.
Альтернативы можно использовать не только непосредственно к названиям типов, но и к уже придуманным альтернативным названиям. Этот приём часто используется для составления из простых частей альтернативы сложному названию типа.
Вот этот листинг из двух строчек показывает способ создать двумерный массив [10][20] в два шага. В первой строчке создаётся альтернативное имя по тому же принципу, что был показан и объяснён выше. Во второй строчке используется только что придуманное альтернативное имя.
typedefintinteger;//Типу int придумано название integer
typedefintegernumbers;//Альтернативному названию типа придумано название numbers
intmain(){
inta;//Официальный вариант
integerb;//Официально: int a
numbersc;//Официально: int c
}
"Официальное название" — это мой авторский термин, который поможет вам быстрее сориентироваться. Как бы вы не добавляли много новых альтернатив, привязка будет к основному, к официальному названию типа. Предназначена эта возможность прежде всего для того, чтобы упрощать длинные или сложные названия типов.
Добавить комментарий