Основные понятия языка

Содержание

Слайд 2

©Павловская Т.А. (СПбГУ ИТМО) Литература Пол И. Объектно-ориентированное программирование с использованием

©Павловская Т.А. (СПбГУ ИТМО)

Литература

Пол И. Объектно-ориентированное программирование с использованием С++. -

К: ДиаСофт, 1995
Шилдт Г. Теория и практика С++. - СПб.: BHV, 1996
Подбельский В.В. Язык Си++: Учебное пособие. - М.: ФиC, 1996
Страуструп Б. Язык программирования С++. - СПб.: БИНОМ, 1999
Р. Лафоре. Объектно-ориентированное программирование в С++. — СПб: ПИТЕР, 2003 г. — 928 с.
Мейерс С. Эффективное использование С++. - М: ДМК, 2000
Элджер Д. С++: Библиотека программиста. - CПб.: Питер, 1999
Голуб А.И. С и С++. Правила программирования. М: БИНОМ, 1996
Аммерааль Л. STL для программистов на С++. - М: ДМК, 2000.
Дж. Коплиен. Программирование на С++ . — СПб: ПИТЕР, 2005 г. — 479 с.
Слайд 3

©Павловская Т.А. (СПбГУ ИТМО) Литература Павловская Т.А. C/C++. Программирование на языке

©Павловская Т.А. (СПбГУ ИТМО)

Литература

Павловская Т.А. C/C++. Программирование на языке высокого уровня.

— CПб.: Питер, 2001, 2003.
Павловская Т.А., Щупак Ю.А. С/С++. Структурное программирование: Практикум. — СПб: ПИТЕР, 2002.
Павловская Т.А., Щупак Ю.А. С++. Объектно-ориентированное программирование: Практикум. — СПб: ПИТЕР, 2004.
Саттер Г. Решение сложных задач на C++. Серия C++ In-Depth, т.4. — Москва: Издательский дом «Вильямс», 2002 г. — 400 с.
Александреску А. Современное проектирование на С++. Серия C++ In-Depth, т.3. — Москва: Издательский дом «Вильямс», 2002 г. — 336 с.
Кениг Э., Му Б. Эффективное программирование на С++. Серия C++ In-Depth, т.2. — Москва: Издательский дом «Вильямс», 2002 г. — 384 с.
Слайд 4

©Павловская Т.А. (СПбГУ ИТМО) Литература Гамма Э., Хелм Р., Джонсон Р.,

©Павловская Т.А. (СПбГУ ИТМО)

Литература

Гамма Э., Хелм Р., Джонсон Р., Влиссидес Дж.

Приемы объектно-ориентированного проектирования. Паттерны проектирования. — СПб: ПИТЕР, 2001 г. — 368 с.
Влиссидес Дж. Применение шаблонов проектирования. Дополнительные штрихи. — Москва: Издательский дом «Вильямс», 2003 г. — 144 с.
Шаллоуей А., Тротт Д. Шаблоны проектирования. Новый подход к объектно-ориентированному анализу и проектированию. — Москва: Издательский дом «Вильямс», 2002 г. — 288 с.
Штерн В. Основы С++. Методы программной инженерии. — Москва: ЛОРИ, 2003 г. — 860 с.
В. Лаптев. С++. Экспресс-курс. — СПб: БХВ-Петербург, 2004 г. — 512 с.
Б. Эккель. Философия С++. — СПб: ПИТЕР, 2004 г. — 572 с.
Слайд 5

©Павловская Т.А. (СПбГУ ИТМО) К. Бек. Экстремальное программирование. — СПб: ПИТЕР,

©Павловская Т.А. (СПбГУ ИТМО)
К. Бек. Экстремальное программирование. — СПб: ПИТЕР, 2002.
К.

Бек, М. Фаулер. Экстремальное программирование. Планирование. — СПб: ПИТЕР, 2003 г. — 144 с.
К. Ауэр, Р. Миллер. Экстремальное программирование. Постановка процесса. — СПб: ПИТЕР, 2003 г. — 368 с.
К. Лоудон. С++. Краткий справочник. — СПб: ПИТЕР, 2004 г. — 220 с.
С. Уэллин. Как не надо программировать на С++. — СПб: ПИТЕР, 2004 г. — 240 с.
А. Крупник. Изучаем С++. — СПб: ПИТЕР, 2003 г. — 251 с.
С. Макконнелл. Совершенный код. — СПб: «Питер», 2005. — 896 с.
Стандарт С++: INTERNATIONAL ISO/IEC STANDARD 14882 1998-09-01, 2003

Литература

Слайд 6

©Павловская Т.А. (СПбГУ ИТМО)

©Павловская Т.А. (СПбГУ ИТМО)

Слайд 7

©Павловская Т.А. (СПбГУ ИТМО) a-z, A-Z, 0-9, “, {,},|,/,%,… - идентификаторы

©Павловская Т.А. (СПбГУ ИТМО)

a-z, A-Z, 0-9, “, {,},|,/,%,…

- идентификаторы
- ключевые слова
-

константы
- знаки операций
- разделители

a++ - --b/c

a=b; for (int i=0;i

примеры

Состав языка

Слайд 8

©Павловская Т.А. (СПбГУ ИТМО) директивы препроцессора описания int main() { операторы

©Павловская Т.А. (СПбГУ ИТМО)

директивы препроцессора
описания
int main() {
операторы главной функции
}
int

f1() {
операторы функции f1
}
int f2() {
операторы функции f2
}

Пример структуры программы

Слайд 9

©Павловская Т.А. (СПбГУ ИТМО) Вид Примеры Целые дес. 8 0 199226

©Павловская Т.А. (СПбГУ ИТМО)

Вид Примеры
Целые дес. 8 0 199226
Восьм. 01 020 07155
Шестн. 0xA 0x1B8 0X00FF
Веществ. 5.7 .001 35.
Вещ. с

плав. т. 0.2E6 .11e–3 5E10
Символьные 'A‘ 'ю‘ '*‘ 'db‘ '\0' '\n‘ '\012‘ '\x07\x07'
Строковые "Здесь был Vasia"
" \tЗначение r=\0xF5\n"

Константы

Слайд 10

©Павловская Т.А. (СПбГУ ИТМО) Тип данных определяет: внутреннее представление данных в

©Павловская Т.А. (СПбГУ ИТМО)

Тип данных определяет:
внутреннее представление данных в памяти компьютера

=> множество значений, которые могут принимать величины этого типа;
операции и функции, которые можно применять к величинам этого типа.

Типы в С++ делятся на основные (fundamental) и составные (compound). Тип может описывать объект, ссылку или функцию.

Типы данных

Слайд 11

©Павловская Т.А. (СПбГУ ИТМО) int (целый); char (символьный); wchar_t (расширенный символьный);

©Павловская Т.А. (СПбГУ ИТМО)

int (целый);
char (символьный);
wchar_t (расширенный символьный);
bool (логический);
float (вещественный);
double (вещественный

с двойной точностью).

Спецификаторы:

short (короткий);
long (длинный);
signed (знаковый);
unsigned (беззнаковый).

+ void

Основные (стандартные) типы данных:

intergal

Слайд 12

©Павловская Т.А. (СПбГУ ИТМО) Тип Диапазон значений Размер(байт) bool true и

©Павловская Т.А. (СПбГУ ИТМО)

Тип Диапазон значений Размер(байт)
bool true и false 1
signed char –128 … 127 1
unsigned

char 0 … 255 1
signed short int –32 768 … 32 767 2
unsigned short int 0 … 65 535 2
signed long int –2 147 483 648 …
2 147 483 647 4
unsigned long int 0 … 4 294 967 295 4
float 3.4e–38 … 3.4e+38 4
double 1.7e–308 … 1.7e+308 8
long double 3.4e–4932 … 3.4e+4932 10

Диапазоны для IBM PC-совместимых