Для имени можно определить альтернативное имя (alias); иначе говоря, можно определить символическое имя, которое будет означать то же самое, что и имя, с которым оно связано (для большинства случаев употребления этого имени).
typedef int* Pint; // Pint — это указатель на int
namespace Long_library_name { /* . . . */ }
namespace Lib = Long_library_name; // Lib — это Long_library_name
int x = 7;
int& r = x; // r — это x
Ссылки — это механизм указания на объекты, работающий на этапе выполнения программы. Ключевые слова typedef и namespace относятся к механизмам ссылок на имена, работающим на этапе компиляции. В частности, инструкция typedef не вводит новый тип, а просто задает новое имя существующего типа. Рассмотрим пример.
typedef char* Pchar; // Pchar — это имя типа char*
Pchar p = "idefix"; // OK: p — это указатель типа char*
char* q = p; // OK: p и q — указатели типа char
int x = strlen(p); // OK: p — указатель типа char*
Директивы препроцессора
Каждая реализация языка C++ содержит препроцессор (preprocessor). В принципе препроцессор работает до компилятора и преобразовывает исходный код, написанный нами, в то, что видит компилятор. В действительности это действие интегрировано в компиляторе и не представляет интереса, за исключением того, что оно может вызывать проблемы. Каждая строка, начинающаяся символом #, представляет собой директиву препроцессора.
Директива #include
Мы широко использовали препроцессор для включения заголовочных файлов.
Рассмотрим пример.
#include Mfile.h"
Эта директива приказывает препроцессору включить содержимое файла file.h в точку исходного текста, где стоит сама директива. Для стандартных заголовков используются угловые скобки (<. . .>), а не кавычки (". . ."). Например: #include
Это рекомендова
Опубликовал katy
May 08 2015 09:43:30 ·
0 Комментариев ·
2484 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.