extern int i; static int j; int k; • Идентификатор должен быть осмысленным; • Имена переменных обычно состоят из строчных символов. Например, index, а не Index или INDEX; • Имена классов обычно начинаются с прописной буквы, например Sales_item; • Несколько слов в идентификаторе разделяют либо символом подчеркивания, либо прописными буквами в первых символах каждого слова. Например: student_loan или studentLoan, но не studentloan.
только другое имя уже существующего объекта. int ival = 1024; int &refVai = ival; // refVal ссылается на другое имя, ival int &refVal2; // ошибка: ссылку следует инициализировать
тип, переменная которого указывает на объект другого типа. double dval; double *pd = &dval;// ok: инициализатор - адрес // объекта типа double double *pd2 = pd; // ok: инициализатор – указатель // на тип double int *pi = pd; // ошибка: типы pi и pd // отличаются pi = &dval; // ошибка: присвоение адреса // типа double
адрес) может находиться в одном из четырех состояний: • Оно может указывать на объект. • Оно может указывать на область непосредственно за концом объекта. • Это может быть нулевое значение, означающее, что данный указатель не связан ни с одним объектом. • Оно может быть недопустимо. Любое иное значение, кроме приведенного выше, является недопустимым.
*р = &ivai; // р содержит адрес ival ; р - указатель на // ival cout << *р; // * возвращает объект, на который // указывает р; выводит 42 *р = 0; // * возвращает объект; присвоение // нового значения ival через указатель р cout << *р; // выводит 0 int *pl = nullptr; // эквивалентно int *pl = 0;
= 512; // размер буфера ввода bufSize = 512; // ошибка: попытка записи в // константный объект typedef double wages; // wages – синоним для double typedef wages base, *p; // base - синоним для double, //a p - для double* using SI = Sales_item; // SI - синоним для Sales_item auto item = vail + val1; // item инициализируется // результатом val1 + val2
при использовании имени cin теперь подразумевается , что оно принадлежит пространству имен std using std::cin; int main(){ int i; cin >> i; // ok : теперь cin - синоним std ::cin cout << i; // ошибка: объявления using нет; std::cout << i; // ok : явно указано применение cout из // пространства имен std return 0; }
последовательность символов переменной длины. Чтобы использовать тип string, необходимо включить в код заголовок string. Поскольку тип string принадлежит библиотеке, он определен в пространстве имён std (стандартной библиотеки). #include <string> string s1; // инициализация по умолчанию; s1 — пустая строка
коллекция объектов одинакового типа, каждому из которых присвоен целочисленный индекс, предоставляющий доступ к этому объекту. Вектор — это контейнер (container), поскольку он "содержит" другие объекты. #include <vector> vector <int> ivec; // ivec содержит объекты // типа int vector vector <Sales_vec> ivec2; // содержит объекты класса //Sales_vec vector <vector<string>> file; // вектор векторов // (двумерный вектор)
символов D и F. Например: DDDFFDFFFD или DFFDD. Найти минимальное количество удалений чтобы в строке не было повторений подряд. Например: DFFD —> DFD(1 удаление), DFDFFFDFD —> DFDFDFD (2 удаления). 2) Дано: строка представленная в CamelCase найти количество слов в данной строке. Например: etoLuchshayaParaNaSvete (5 слов), matmehLuchsheVseh (3 слова). 3) Проверить пароль на надежность: Длинна не меньше 6 символов; Содержит хотя бы 1 цифру; Содержит хотя бы один английский символ нижнего регистра; Содержит хотя бы один английский символ нижнего регистра; Содержит один из специальных знаков. Список спец знаков: !@#$%^&*()-+