Форум программистов, компьютерный форум CyberForum.ru

У меня вопрос по классам. На приложенных картинках я выделил непонятные строки. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Упорядочить строки матрицы в порядке возрастания элементов главной диагонали http://www.cyberforum.ru/cpp-beginners/thread722661.html
Упорядочить строки матрицы m * n в порядке возрастания элементов в главной диагонали. Матрица вводится и выводится в главной программе. Составление выполнить с помощью функции.
C++ Строка является отрывком кода на языке С. Вывести все содержащиеся в ней комментарии. Строка является отрывка кода из С. Вывести все содержащиеся в ней комментарии. Понятно, что //такие комментарии можно вывести через strchr а что делать с /*такими*/ ? http://www.cyberforum.ru/cpp-beginners/thread722631.html
C++ Совместимость char и unsigned char
Есть некие числа в виде unsigned char. Есть строка в виде массива char (которая потом сбрасывается в файл с помощью fputs). В программе происходит преобразование чисел в строки. При этом используются побитовые операции. Результаты не всегда совпадают с ожидаемыми. Вот я и думаю - в чём причина? Вроде ничего не напутал. Я так предполагаю, что при копировании числа из unsigned char в char оно никак...
Составление логического выражения C++
Составить логическое выражение, значение которого равно True, если высказывание истинно, и False, - если ложно. Сумма цифр четырехзначного натурального числа является однозначным числом.
C++ Минимальный массив из кв. матрицы http://www.cyberforum.ru/cpp-beginners/thread722610.html
Создать одномерный массив из минимальных элементов каждой строки данной квадратной матрицы.
C++ расчёт значений переменных Здравствуйте!Возник вопрос касательно перерасчета переменных в цикле. Допустим, у нас есть код string mas; for(int i=0;i<mas.size();i++) Будет ли программа на каждой итерации цикла переасчитывать значение mas.size() или компилятор это оптимизирует это както.Или же всё же будет лучше записать так: string mas; подробнее

Показать сообщение отдельно
koderman
2 / 2 / 1
Регистрация: 27.11.2012
Сообщений: 131
07.01.2013, 15:53  [ТС]     У меня вопрос по классам. На приложенных картинках я выделил непонятные строки.
Нашёл в инете следующую программу:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
2: // Доступ к данным объекта в области динамического обмена
 
3:
 
4: #include <iostream.h>
 
5:
 
6: class SimpleCat
 
7: {
 
8: public:
 
9: SimpleCat() { itsAge = 2; }
 
10: ~SimpleCat() { }
 
11: int GetAge() const { return itsAge; >
 
12: void SetAge(int age) { itsAge = age; }
 
13: private:
 
14: int itsAge;
 
15: };
 
16:
 
17: int main()
 
18: {
 
19: SimpleCat * Frisky = new SimpleCat;
 
20: cout << "Frisky " << Frisky->GetAge() << " years old ";
 
21: Frisky->SetAge(5);
 
22: cout << "Frisky " << Frisky->GetAge() << " years old ";
 
23: delete Frisky;
 
24: return 0;
 
25: }
 
 
 
Результат:
 
Frisky 2 years old
 
Frisky 5 years old
В этой программе я не нашёл объекта. Насколько я помню объект в этом случае должен создаваться так: SimpleCat Frisky;
Тоесть то слово которое идёт после имени класса является объектом. В коде такого нету. По моему Frisky является указателем на экземпляр класса SimpleCat, но это не объект.


Вот описание к коду которое было при нём:

Анализ: В строке 19 в области динамического обмена выделяется память для хранения экземпляра класса SimpleCat. Конструктор, вызываемый по умолчанию, присваивает новому объекту возраст два года. Это значение получено как результат выполнения функции-члена GetAge(), которая вызывается в строке 20. Поскольку мы имеем дело с указателем на объект, для вызова функции используется оператор косвенного обращения к члену класса (->). В строке 21 для установки нового значения возраста вызывается метод SetAge(), а повторный вызов функции GetAge() (строка 22) позволяет получить это значение.
 
Текущее время: 07:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru