Урок №16. Ключевые слова и идентификаторы



Книга Урок №16. Ключевые слова и идентификаторы

В языке программирования C++ существует определенный набор из 84 слов (включая версию С++17), которые зарезервированы для использования только внутри языка. Эти слова известны как ключевые слова и каждое из них имеет свое уникальное значение.

Ниже представлен перечень всех основных терминов в языке программирования C++ (включая последнюю версию C++17):

В C++11 были введены два дополнительных идентификатора: override и final. Их особое значение проявляется в определенных ситуациях, но они не являются зарезервированными ключевыми словами.

Мы уже знакомы с некоторыми основными терминами, такими как int, void и return. В сочетании с различными операторами, эти ключевые слова формируют основу языка C++ (за исключением директив препроцессора). Поскольку они обладают особым значением, среды разработки всегда выделяют их другим цветом для удобства восприятия.

После тщательного изучения всех уроков по языку программирования C++ на платформе Road to programming, вы познакомитесь с основными ключевыми понятиями этого языка, описанными выше.

Идентификаторы

Идентификатор в языке программирования C++ представляет собой название переменной, функции, класса или другого объекта. Возможно использование любых слов или имен для определения идентификаторов, однако существуют определенные общие правила, которые необходимо придерживаться:

Нельзя использовать ключевое слово в качестве идентификатора. Ключевые слова зарезервированы.

Для создания идентификатора допускаются только буквы латинского алфавита (в верхнем и нижнем регистрах), цифры и символ подчёркивания. Любые другие символы и пробелы не допускаются.

Для того чтобы идентификатор был корректным, необходимо, чтобы он начинался с буквы (большой или маленькой). Начинаться с цифры идентификатор не может.

В C++ различают нижний и верхний регистры. Например, nvalue не равно nValue и не равно NVALUE.

Теперь, после того как вы узнали, как можно давать имена объектам, давайте обсудим правильный подход к их наименованию.

Первое правило языка C++ - имена переменных должны начинаться с буквы в нижнем регистре. Если имя переменной состоит из одного слова, то оно должно быть написано в нижнем регистре:

int value ; // корректно

int Value ; // некорректно (должно начинаться с буквы в нижнем регистре)

int VALUE ; // некорректно (должно начинаться с буквы в нижнем регистре)

int VaLuE ; // некорректно (должно начинаться с буквы в нижнем регистре)

Обычно имена функций также начинаются с маленькой буквы (хотя есть некоторые разногласия по этому поводу). Мы придерживаемся этого стиля, так как даже функция main() (основная функция всех программ) начинается с маленькой буквы, как и все функции из Стандартной библиотеки C++.

Идентификаторы, начинающиеся с заглавной буквы, применяются для обозначения структур, классов или перечислений (об этом будет рассказано позже).

Если нужно назвать переменную или функцию, состоящую из нескольких слов, то можно выбрать один из двух вариантов: разделить слова подчеркиванием или использовать CamelCase - метод написания, при котором слова пишутся слитно без пробелов, а каждое новое слово начинается с заглавной буквы. CamelCase (или "ВерблюжийСтиль") получил свое название из-за заглавных букв, напоминающих горбы верблюда.

int my_variable_name ; // корректно (разделяется символом подчёркивания)

void my_function_name ( ) ; // корректно (разделяется символом подчёркивания)

int myVariableName ; // корректно (используется CamelCase)

void myFunctionName ( ) ; // корректно (используется CamelCase)

int my variable name ; // некорректно (пробелы запрещены)

void my function name ( ) ; // некорректно (пробелы запрещены)

int MyVariableName ; // работает, но не рекомендуется (следует начинать с буквы в нижнем регистре)

void MyFunctionName ( ) ; // работает, но не рекомендуется

Несмотря на то, что Стандартная библиотека C++ использует символ подчёркивания для переменных и функций, мы предпочитаем использовать CamelCase для улучшения читаемости кода. Иногда можно встретить смешанное использование обоих способов: подчёркивание для переменных и CamelCase для функций.

Важно отметить, что при работе с кодом других разработчиков рекомендуется придерживаться их стиля написания кода, даже если он не соответствует упомянутым выше рекомендациям.

Во-первых, избегайте начинать названия переменных с символа подчёркивания, поскольку такие имена могут быть зарезервированы для операционной системы, библиотек или использоваться компилятором.

В-третьих, (это, вероятно, самое важное правило из всех) следует использовать в качестве идентификаторов только те имена, которые действительно отражают суть объекта. Часто неопытные программисты сокращают имена переменных, чтобы сэкономить время при написании кода или потому, что считают, что все понятно. Однако в большинстве случаев не все так очевидно. Идеально, чтобы переменные назывались так, чтобы человек, увидевший ваш код впервые, мог как можно быстрее понять, что делает этот код. Через 3 месяца, когда вы пересмотрите свои программы, вы можете забыть, как они работают, и будете благодарны себе за то, что дали переменным осмысленные имена. Чем сложнее код, тем проще и понятнее должны быть идентификаторы.

*Примечание: Можно использовать тривиальные имена для переменных, которые имеют тривиальное использование (например, для переменных в цикле, в простых математических функциях и т.д.).

В-четвертых, дополнительный пояснительный комментарий всегда будет полезным. Например, мы создали переменную с именем numberOfChars, которая должна содержать количество символов определенной части строки. Сколько символов в строке "Hello, world!": 10, 11, 12 или 13? Это зависит от того, учитываем ли мы пробелы и знаки препинания или нет. Вместо использования названия переменной numberOfCharsIncludingWhitespaceAndPunctuation, лучше добавить понятный комментарий, который разъяснит ситуацию:

// Эта переменная подсчитывает количество символов части строки, включая пробелы и знаки препинания

int numberOfChars ;

Тест

Какие из имен переменных выбраны неверно и каковы причины?

int result;

int _oranges;

int NUMBER;

int the name of a variable;

int TotalCustomers;

int void;

int countFruit;

int 4orYou;

int kilograms_of_pipe;

202   0  

Comments

    Ничего не найдено.