![]() Главная страница Случайная страница Разделы сайта АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Спецификация префиксов венгерской нотации
Именование переменных. При использовании венгерской нотации переменные имеют префиксы, указанные в табл. 2.1. Кроме того, если имя переменной состоит из одного или нескольких слов, то каждое из них записывается с прописной буквы. Вот несколько примеров:
char *szFileName; // Строка с завершающим нулем int *lpiData; // 32-битовый указатель на int BOOL bSemaphore; // Логическое значение DWORD dwMaxCount; // 32-битовое беззнаковое целое
Хотя специальное обозначение для локальных переменных мне неизвестно, для глобальных обычно используется префикс g_ (или просто g):
int g_iXPos; // Глобальная позиция по координате х int g_Timer; // Глобальный таймер char *g_szString; // Глобальная строка с // завершающим нулем Именование функций. Функции именуются так же, как и переменные, но только без префиксов. Другими словами, в именах функций составляющие их слова пишутся с прописных букв, и не более того.
int PlotPixel(int ix, int iy, int ic); void *MemScan(char *szString);
Использование подчеркиваний считается неверным. Например, следующая функция не соответствует венгерской нотации:
int Get_Pixel(int ix, int iy); Именование типов и констант. Имена всех типов и констант состоят только из прописных букв, но при этом Вы можете использовать в именах подчеркивание:
const LONG NUM_SECTORS = 100; // Константа в стиле C++ #define MAX_CELLS 64 // Константа в стиле С #define POWERUNIT 100 // Константа в стиле С typedef unsigned char UCHAR; // Пользовательский тип
Здесь нет ничего необычного – обыкновенные стандартные определения. Хотя большинство программистов Microsoft не используют подчеркивания, предпочтительно пользоваться ими с тем, чтобы имена были более удобочитаемы. В C++ ключевое слово const имеет несколько значений, но в приведенном выше коде оно использовано просто для создания константной переменной. Этот способ похож на использование макроопределения #define, но при этом содержит информацию о типе. Использование const позволяет, таким образом, обеспечить проверку типов в процессе компиляции и выполнить необходимые преобразования. Забиваем Сайты В ТОП КУВАЛДОЙ - Уникальные возможности от SeoHammer
Каждая ссылка анализируется по трем пакетам оценки: SEO, Трафик и SMM.
SeoHammer делает продвижение сайта прозрачным и простым занятием.
Ссылки, вечные ссылки, статьи, упоминания, пресс-релизы - используйте по максимуму потенциал SeoHammer для продвижения вашего сайта.
Что умеет делать SeoHammer
— Продвижение в один клик, интеллектуальный подбор запросов, покупка самых лучших ссылок с высокой степенью качества у лучших бирж ссылок. — Регулярная проверка качества ссылок по более чем 100 показателям и ежедневный пересчет показателей качества проекта. — Все известные форматы ссылок: арендные ссылки, вечные ссылки, публикации (упоминания, мнения, отзывы, статьи, пресс-релизы). — SeoHammer покажет, где рост или падение, а также запросы, на которые нужно обратить внимание. SeoHammer еще предоставляет технологию Буст, она ускоряет продвижение в десятки раз, а первые результаты появляются уже в течение первых 7 дней. Зарегистрироваться и Начать продвижение Именование классов. Соглашение об именовании классов может Вас несколько удивить, но я видел множество программистов, настолько привыкших к нему, что используют его в повседневной работе. Просто все классы C++ должны иметь имена с префиксом, состоящим из одной прописной буквы С. class CVector { public: CVector() { ix = iy = iz = imagnitude = 0; } CVector(int x, int y, int z) { ix = x; iy = y; iz = z; }
...
private: int ix, iy, iz; // Направление вектора int imagnitude; // Размер вектора } Именование параметров. Имена параметров функций следуют тем же соглашениям, что и обычные переменные, хотя это и не обязательно. Например, Вы можете увидеть объявление функции, выглядящее так:
UCHAR GetPixel(int x, int y);
При использовании венгерской нотации это объявление должно выглядеть следующим образом:
UCHAR GetPixel(int ix, int iy);
Кроме того, в объявлении функции имена параметров могут не указываться вовсе – указываются только их типы:
UCHAR GetPixel(int, int);
Конечно, такое допустимо только в объявлении функции; в определении функции должны использоваться не только типы, но и имена переменных. Знакомство с венгерской нотацией еще не означает, что Вы в обязательном порядке должны ее использовать. Таким образом, код в этой книге будет использовать венгерскую нотацию при рассмотрении функций Win32 API, но в других местах будем пользоваться собственным стилем. Программы, приведенные в этой книге, создавались в среде Microsoft Visual C ++ 6.0. Во время работы с книгой, разбирая приведенные примеры, или при создании собственных приложений Вы, вероятно, будете применять какой-либо другой компилятор, который сможет строить программы для Windows. Демонстрационные программы должны правильно транслироваться любым компилятором, совместимым с Visual C ++. Примеры, приведенные в книге, написаны на стандартном C/C++, так что они должны транслироваться любым компилятором C/C++. Обычно создается проект типа Win32-Application. В состав «рабочего пространства» (Workspace) проекта (на рис. 1.4 – это проект Ex_02_01) обязательно входят файлы (Sourse Files): Сервис онлайн-записи на собственном Telegram-боте
Попробуйте сервис онлайн-записи VisitTime на основе вашего собственного Telegram-бота:— Разгрузит мастера, специалиста или компанию; — Позволит гибко управлять расписанием и загрузкой; — Разошлет оповещения о новых услугах или акциях; — Позволит принять оплату на карту/кошелек/счет; — Позволит записываться на групповые и персональные посещения; — Поможет получить от клиента отзывы о визите к вам; — Включает в себя сервис чаевых. Для новых пользователей первый месяц бесплатно. Зарегистрироваться в сервисе · текст программы с суффиксом.cpp (на рис.1.4 – это текст программы Example-02-01.cpp); · стандартная библиотека вызовов Windows (на рис.1.4 – это библиотека Comctl32.lib); · стандартный заголовочный h-файл (на рис. 1.4 – это Windows.h).
Как показано на рис. 1.4, первые два файла включаются разработчиком программы в явном виде. Третий файл (Header Files), если на него есть ссылка в тексте программы с помощью макроса #include < Windows.h>, который подключается автоматически.
Рис. 1.4. Типовой состав проекта
|