Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π―Π·Ρ‹ΠΊ программирования C++. ΠŸΡΡ‚ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 28

Автор Π‘Ρ‚Π΅Π½Π»ΠΈ Π›ΠΈΠΏΠΏΠΌΠ°Π½

Π­Ρ‚ΠΈ срСдства ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для принятия ΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΡ‚ΠΈΠ² мноТСствСнного Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

#ifndef SALES_DATA_H

#define SALES_DATA_H

#include <string>

struct Sales_data {

 std::string bookNo;

 unsigned units_sold = 0;

 double revenue = 0.0;

#endif

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Sales_data.h Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° #ifndef истинна, ΠΈ прСпроцСссор ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ строки послС Π½Π΅Π΅ Π΄ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ #endif. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ пСрСмСнная прСпроцСссора SALES_DATA_H Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°, Π° содСрТимоС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Sales_data.h скопировано Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ. Если впослСдствии Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Sales_data.h Π² Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ„Π°ΠΉΠ», Ρ‚ΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° #ifndef окаТСтся Π»ΠΎΠΆΠ½Π° ΠΈ строки ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π΅ΠΉ ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΉ #endif Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

ИмСна ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… прСпроцСссора Π½Π΅ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½ΡΡŽΡ‚ΡΡ ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ областСй видимости языка Π‘++.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ прСпроцСссора, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΠΌΠ΅Π½Π° для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ Π²ΠΎ всСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΌΡ‹ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠΌΠ΅Π½ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π² Π½Π΅Π³ΠΎ имя класса. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ„Π»ΠΈΠΊΡ‚Π° ΠΈΠΌΠ΅Π½ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ сущностями ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΈΠΌΠ΅Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… прСпроцСссора ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΈΡˆΡƒΡ‚ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΌ рСгистрС.

Π£ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Π°, Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½ΠΈ Π½Π΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ. Π—Π°Ρ‰ΠΈΡ‚Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° проста Π² написании, ΠΈ ΠΏΡ€ΠΈ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎΠΌ ΠΈΡ… ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·ΠΌΡ‹ΡˆΠ»ΡΡ‚ΡŒ, Π½ΡƒΠΆΠ½Ρ‹ ΠΎΠ½ΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ‚.

УпраТнСния Ρ€Π°Π·Π΄Π΅Π»Π° 2.6.3

Π£ΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠ΅ 2.42. ΠΠ°ΠΏΠΈΡˆΠΈΡ‚Π΅ ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Sales_data.h ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π΅Π³ΠΎ для Π½ΠΎΠ²ΠΎΠΉ вСрсии упраТнСния ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° 2.6.2.

РСзюмС

Π’ΠΈΠΏΡ‹ β€” Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ всСх ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π‘++.

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΈΠΏ опрСдСляСт трСбования ΠΏΠΎ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΡŽ ΠΈ опСрациям, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ этого Ρ‚ΠΈΠΏΠ°. Π―Π·Ρ‹ΠΊ прСдоставляСт Π½Π°Π±ΠΎΡ€ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… встроСнных Ρ‚ΠΈΠΏΠΎΠ², Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ int ΠΈ char, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ тСсно связаны с ΠΈΡ… прСдставлСниСм Π½Π° Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… срСдствах ΠΌΠ°ΡˆΠΈΠ½Ρ‹. Π’ΠΈΠΏΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ нСконстантными ΠΈΠ»ΠΈ константными; константный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ слСдуСт ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ константного ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ составныС Ρ‚ΠΈΠΏΡ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ ΠΈΠ»ΠΈ ссылки. Боставной Ρ‚ΠΈΠΏ β€” это Ρ‚ΠΈΠΏ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ… Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°.

Π―Π·Ρ‹ΠΊ позволяСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ собствСнныС Ρ‚ΠΈΠΏΡ‹, Ρ‚.Π΅. классы. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ классы, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π°Π±ΠΎΡ€ Ρ‚Π°ΠΊΠΈΡ… высокоуровнСвых абстракций, ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏΡ‹ IO ΠΈ string.

Π’Π΅Ρ€ΠΌΠΈΠ½Ρ‹

АдрСс (address). НомСр Π±Π°ΠΉΡ‚Π° Π² памяти, начиная с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ располагаСтся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

АрифмСтичСский Ρ‚ΠΈΠΏ (arithmetic type). ВстроСнныС Ρ‚ΠΈΠΏΡ‹, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ логичСскиС значСния, символы, Ρ†Π΅Π»Ρ‹Π΅ числа ΠΈ числа с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой.

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ (base type). Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠΏΠ°, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ со спСцификатором const, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρƒ объявлСния Π² объявлСнии. Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ прСдставляСт ΠΎΠ±Ρ‰ΠΈΠΉ Ρ‚ΠΈΠΏ, Π½Π° основании ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ строятся ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ объявлСния Π² объявлСнии.

Π‘Π°ΠΉΡ‚ (byte). НаимСньший адрСсуСмый Π±Π»ΠΎΠΊ памяти. На Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ машин Π±Π°ΠΉΡ‚ составляСт 8 Π±ΠΈΡ‚ΠΎΠ².

Π‘Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ (unsigned). ЦСлочислСнный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ способны Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ значСния большС ΠΈΠ»ΠΈ Ρ€Π°Π²Π½Ρ‹Π΅ Π½ΡƒΠ»ΡŽ.

Π’ области видимости (in scope). Имя, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΈΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ области видимости.

Π’Π½Π΅ΡˆΠ½ΡΡ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости (outer scope). ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости.

ВнутрСнняя ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости (inner scope). ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости, влоТСнная Π² Π΄Ρ€ΡƒΠ³ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости.

Внутриклассовый ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ (in-class initializer). Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€, прСдоставлСнный ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ объявлСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ-Ρ‡Π»Π΅Π½Π° класса. Π—Π° внутриклассовым ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ΠΎΠΌ слСдуСт символ =, ΠΈΠ»ΠΈ ΠΎΠ½ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки.

Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (temporary). БСзымянный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, создаваСмый компилятором ΠΏΡ€ΠΈ вычислСнии выраТСния. Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сущСствуСт Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° вычислСния всСго выраТСния, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ Π±Ρ‹Π» создан.

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости (global scope). ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости, внСшняя для всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… областСй видимости.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° прСпроцСссора #define. ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ прСпроцСссора.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° прСпроцСссора #endif. Π—Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ #ifdef ΠΈΠ»ΠΈ #ifndef.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° прСпроцСссора #ifdef. ВыясняСт, Ρ‡Ρ‚ΠΎ данная пСрСмСнная ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°.

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° прСпроцСссора #ifndef. ВыясняСт, Ρ‡Ρ‚ΠΎ данная пСрСмСнная Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π°.

Π—Π°Ρ‰ΠΈΡ‚Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° (header guard). ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ прСпроцСссора, прСдназначСнная для прСдотвращСния Π½Π΅ΠΎΠ΄Π½ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ содСрТимого Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π² ΠΎΠ΄ΠΈΠ½ Ρ„Π°ΠΉΠ» исходного ΠΊΠΎΠ΄Π°.

Π—Π½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ (signed). ЦСлочислСнный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ способны Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ числа, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π½ΡƒΠ»ΡŒ.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ (identifier). ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов, ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ имя. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ зависит ΠΎΡ‚ рСгистра символов.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ (initialization). ΠŸΡ€ΠΈΡΠ²ΠΎΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ исходного значСния ΠΏΡ€ΠΈ Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ слСдуСт ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ.

Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ (default initialization). Бпособ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈ отсутствии явной ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ‚ΠΈΠΏΠ° класса опрСдСляСтся классом. ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ встроСнного Ρ‚ΠΈΠΏΠ°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π² глобальной области видимости, ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 0, Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² локальной области видимости ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΠΈΠΏ (integral type). Π’ΠΎ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ арифмСтичСский ΠΈΠ»ΠΈ цСлочислСнный Ρ‚ΠΈΠΏ.

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово struct. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ структуры (класса).

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово typedef. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ псСвдоним для Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°. Когда ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ слово typedef присутствуСт Π² объявлСнии Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² объявлСнии ΠΈΠΌΠ΅Π½Π° становятся ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ Ρ‚ΠΈΠΏΠ°.

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π½Π°Ρ ссылка (const reference). Π Π°Π·Π³ΠΎΠ²ΠΎΡ€Π½Ρ‹ΠΉ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ для ссылки Π½Π° константный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π½ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ (constant expression). Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ вычислСно Π²ΠΎ врСмя компиляции.

ΠšΠΎΠ½ΡΡ‚Π°Π½Ρ‚Π½Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (const pointer). Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ со спСцификатором const.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ соотвСтствия Ρ‚ΠΈΠΏΠΎΠ² (type checking). Π’Π΅Ρ€ΠΌΠΈΠ½, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ процСсс ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ компилятором соотвСтствия способа использования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° заявлСнному для Π½Π΅Π³ΠΎ Ρ‚ΠΈΠΏΡƒ.

Π›ΠΈΡ‚Π΅Ρ€Π°Π» (literal) Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ число, символ ΠΈΠ»ΠΈ строка символов. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ. Π‘ΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Π·Π°ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² ΠΎΠ΄ΠΈΠ½Π°Ρ€Π½Ρ‹Π΅ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ, Π° строковыС Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Π² Π΄Π²ΠΎΠΉΠ½Ρ‹Π΅.

Π›ΠΈΡ‚Π΅Ρ€Π°Π» nullptr. Π›ΠΈΡ‚Π΅Ρ€Π°Π»ΡŒΠ½Π°Ρ константа, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π°Ρ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ.

Π›ΠΎΠΊΠ°Π»ΡŒΠ½Π°Ρ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости (local scope). Π Π°Π·Π³ΠΎΠ²ΠΎΡ€Π½Ρ‹ΠΉ синоним для области дСйствия Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°.

Массив (array). Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ…, содСрТащая ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ Π½Π΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ индСксу. Π‘ΠΎΠ»Π΅Π΅ подробная информация ΠΎ массивах ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 3.5.

НСинициализированная пСрСмСнная (uninitialized variable). ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ, опрСдСлСнная Π±Π΅Π· исходного значСния. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° доступа ΠΊ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ Π½Π΅ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ повСдСнию.

НСопрСдСлСнноС ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ (undefined behavior). Π‘Π»ΡƒΡ‡Π°ΠΉ, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ стандарт языка Π½Π΅ опрСдСляСт значСния. Осознанно ΠΈΠ»ΠΈ нСосознанно, Π½ΠΎ ΠΏΠΎΠ»Π°Π³Π°Ρ‚ΡŒΡΡ Π½Π° Π½Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ нСльзя. Оно являСтся источником Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ошибок Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ выполнСния, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ бСзопасности ΠΈ пСрСносимости.

НСпСчатаСмый символ (nonprintable character). Π‘ΠΈΠΌΠ²ΠΎΠ», Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄ΠΈΠΌΠΎΠ³ΠΎ прСдставлСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ символ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚Π° Π½Π° ΠΎΠ΄ΠΈΠ½ символ, символ Π½ΠΎΠ²ΠΎΠΉ строки ΠΈ Ρ‚.Π΄.

НулСвой ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (null pointer). Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 0. НулСвой ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ допустим, Π½ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΈ Π½Π° ΠΊΠ°ΠΊΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости (scope). Π§Π°ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠΌΠ΅Π½Π° ΠΈΠΌΠ΅ΡŽΡ‚ смысл. Π―Π·Ρ‹ΠΊ Π‘++ ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько ΡƒΡ€ΠΎΠ²Π½Π΅ΠΉ областСй видимости.

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Π°Ρ (global) β€” ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π²Π½Π΅ ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… областСй видимости.

Класса (class) β€” ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ классом.

ΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²Π° ΠΈΠΌΠ΅Π½ (namespace) β€” ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² пространствС ΠΈΠΌΠ΅Π½.

Π‘Π»ΠΎΠΊΠ° (block) β€” ΠΈΠΌΠ΅Π½Π°, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π² Π±Π»ΠΎΠΊΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ², Ρ‚.Π΅. Π² ΠΏΠ°Ρ€Π΅ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Ρ… скобок.

ΠžΠ±Π»Π°ΡΡ‚ΠΈ видимости ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ имя объявлСно, ΠΎΠ½ΠΎ доступно Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ‚ΠΎΠΉ области видимости, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±Ρ‹Π»ΠΎ объявлСно.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ (object). ΠžΠ±Π»Π°ΡΡ‚ΡŒ памяти, которая ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΈΠΏ. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ β€” это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ имя.

ОбъявлСниС (declaration). Π£Π²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ сущСствовании ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ»ΠΈ Ρ‚ΠΈΠΏΠ°, опрСдСляСмых Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ мСстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. НикакиС ΠΈΠΌΠ΅Π½Π° Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹, ΠΏΠΎΠΊΠ° ΠΎΠ½ΠΈ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ ΠΈΠ»ΠΈ Π½Π΅ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹.