Джесс Либерти - Освой самостоятельно С++ за 21 день.

Здесь есть возможность читать онлайн «Джесс Либерти - Освой самостоятельно С++ за 21 день.» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Программирование, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Освой самостоятельно С++ за 21 день.: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Освой самостоятельно С++ за 21 день.»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В книге широко представлены возможности новейшей версии программного продукта Microsoft Visual C++. Подробно описаны средства и подходы программирования современных профессиональных приложений. Материалы книги дополнены многочисленными демонстрационными программами, в процессе разработки которых максимально используются возможности программных инструментов Microsoft Visual Studio. Особое внимание уделено новинкам версии 6.0 и новейшим технологиям объектно-ориентированного программирования, включая использование библиотеки MFC и шаблонов классов, а также создание связанных списков. Отдельное занятие посвящено вопросам объектно-ориентированного анализа и проектирования приложений. Подробно рассмотрены все средства и подходы конструирования собственных пользовательских классов.
Книга рассчитана на широкий круг читателей, интересующихся современными проблемами программирования.

Освой самостоятельно С++ за 21 день. — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Освой самостоятельно С++ за 21 день.», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

22: }

23:

24: int main()

25: {

26: Animal peppy;

27: setValue(peppy,5);

28: return 0;

29: }

7. Жучки: что неправильно в этой программе?

1: #include

2:

3: class Animal;

4:

5: void setValue(Animal& , int):

6: void setValue(Animal& , int.int);

7:

8: class Animal

9: {

10: friend void setValue(Animal& ,int):

11: private:

12: mt itsWeight;

13: int itsAge;

14: };

15:

16: void setValue(Animal& theAnimal, int theWeight)

17: {

18: theAnimal.itsWeight = theWeight;

19: }

20:

21:

22: void setValue(Animal& theAnimal, int theWeight, int theAge)

23: {

24: theAnimal.itsWeight = theWeight:

25: theAnimal.itsAge = theAge;

26: }

27:

28: int main()

29: {

30: Animal peppy;

31: setValue(peppy,5);

32: setValue(peppy,7,9);

33: return 0:

34: }

Функиия setValue(Animal& ,int) была объявлена дружественной, но перегруженная

функция setValue(Animal& ,int,int) не была объявленадружественной.

8. Исправьте листинг, приведенный в упражнении 7, и откомпилируйте его.

1: #include

2:

3: class Animal;

4:

5: void setValue(Animal& , int);

6: void setValue(Animal& , int.int);

7:

8: class Animal

9: {

10: friend void setValue(Animal& ,int);

11: friend void setValue(Animal& ,int.int): // изменение!

12: private:

13: int itsWeight;

14: int itsAge;

15: };

16:

17: void setValue(Animal& theAnimal, int theWeight)

18: {

19: theAnimal.itsWeight = theWeight;

20: }

21:

22:

23: void setValue(Animal& theAnimal, int theWeight, int theAge)

24: {

25: theAnimal.itsWeight = theWeight;

26: theAnimal.itsAge = theAge;

27: }

28:

29: int main()

30: {

31: Animal peppy;

32: setValue(peppy.5);

33: setValue(peppy,7,9);

34: return 0;

35: }

День 16

Контрольные вопросы

1. Что такое оператор ввода и как он работает?

Оператор ввода (>>) является членом объекта istream и используется для записи данных в переменные программы.

2. Что такое оператор вывода и как он работает?

Оператор вывода (<<)является членом объекта ostream и используется для записи данных в устройство вывода.

3. Перечислите три варианта перегруженной функции cin.get() и укажите основные их отличия.

Первый вариант функции-члена get() используется без параметров. Она возвращает значение считанного символа. При достижении кониа файла она возвратит EOF (end of file, т.е. конец файла).

Второй вариант функции-члена cin.get() принимает в качестве параметра ссылку на символьную переменную. Этой переменной присваивается следующий символ в потоке ввода. Возвращаемым значением этой функции является объект iostream.

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

4. Чем сin.read()отличается от сin.getline()?

Функция cin.read() используется для чтения структур двоичных данных.

Функция cin.getline() предназначена для чтения из буфера istream.

5. Какая ширина устанавливается по умолчанию для вывода длинных целых чисел с помощью оператора вывода?

Автоматически устанавливается ширина, достаточная для отображения всего числа.

6. Какое значение возврашает оператор вывода?

Ссылку на объект istream.

7. Какой параметр принимается конструктором объекта ofstream?

Имя открываемого файла.

8. Чтоустанавливаетаргумент ios::ate?

Аргумент ios::ate помещает точку ввода в конец файла, но вы можете записывать данные в любом месте файла.

Упражнения

1. Напишите программу, использующую четыре стандартных объекта класса iostream — cin, cout, cerr и clog.

1: #include

2: int main()

3: {

4: int x;

5: cout << "Enter а nurober; ";

6: cin >> x;

7: cout << "You entered: " << x << endl;

8: cerr << "Uh oh, this to cerr!" << endl;

9: clog << "Ouh oh, this to clog!" << endl;

10: return 0;

11: }

2. Напишите программу, предлагающую пользователю ввести свое полное имя с последующим выводом этого имени на экран.

1: #include

2: int main()

3: {

4: char name[80];

5: cout << "Enter your full name: ";

6: cin.getline(name,80);

7: cout << "\nYou entered: " << name << endl;

8: return 0;

9: }

3. Перепишите листинг 16.9, отказавшись от использования методов putback() и ignore().

1: // Листинг 16.9. Измененный

2: #include

3:

4: int main()

5: {

6: char ch;

7: cout << "enter а phrase: ";

8: while ( cin.get(ch) );

9: {

10: switch (ch)

11: {

12: case '!':

13: cout << '$';

14: break:

15: case '#':

16: break;

17: default:

18: cout << ch;

19: break;

20: }

21: }

22: return 0;

23: }

4. Напишите программу, считывающую имя файла в качестве аргумента командной строки и открывающую файл для чтения. Разработайте алгоритм анализа всех символов, хранящихся в файле, и выведите на экран только текстовые символы и знаки препинания (пропускайте все непечатаемые символы). Закройте файл перед завершением работы программы.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Освой самостоятельно С++ за 21 день.»

Представляем Вашему вниманию похожие книги на «Освой самостоятельно С++ за 21 день.» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Освой самостоятельно С++ за 21 день.»

Обсуждение, отзывы о книге «Освой самостоятельно С++ за 21 день.» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x