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

Объявление объекта одного класса в описании другого класса - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Сравнение строк с помощью методов отдельного класса http://www.cyberforum.ru/cpp-beginners/thread536454.html
Доброго времени суток. Братцы, выручайте, окажите помощь, я уже не знаю, что и придумать. Столкнулся я вот с чем. Но, по-порядку, есть приложение Winapi, в нем есть два элемента edit, в которые...
C++ Поиск файла в каталоге если нет , то создать Добрый день , облазил кучу сайтов , но не нашел ответ на вопрос ... Как создать файл если он отсутствует ? И как указать каталог для поиска ? Заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread536451.html
Очереди. Каким образом считать две очереди из одного текстового файла? C++
Здравстуйте. В задании первый пункт состоит в том, что нужно сформировать две очереди по n элементов с помощью считки данных из текстового файла. Возможно ли так сделать с одним текстовым файлом...
Удалить из списка s все элементы с значением содержимого, превышающим заданное число k. C++
Удалить из списка s все элементы с значением содержимого, превышающим заданное число k.
C++ Стек с возможностью перемещения произвольного элемента в вершину. http://www.cyberforum.ru/cpp-beginners/thread536394.html
Стек с возможностью перемещения произвольного элемента в вершину.
C++ Добавление элемента в начало динамического массива Господа подскажите пожалуйста ошибку в коде. Не верно работает добавление нового элемента в начало динамического массива. Не могу допетрить как это сделать. Вот код // выводится меню - добавть,... подробнее

Показать сообщение отдельно
переулок
0 / 0 / 0
Регистрация: 02.04.2012
Сообщений: 3

Объявление объекта одного класса в описании другого класса - C++

02.04.2012, 10:07. Просмотров 1055. Ответов 5
Метки (Все метки)

Здравствуйте.
Почему при объявлении Student s в классе Teacher не возникает ошибки? Ведь такой объект уже существует.
И почему при дальнейшем вызове члена s.x из функции main() он выдаёт ранее присвоенное значение, хотя должен был обнулиться посредством конструктора?

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
#include<iostream.h>
 
class Student
{
    public:
    Student()
    {
        cout << "Конструируем Student\n";
        x = 0.0;
        cout << "вывожу s.x  x = " << x << " classStudent\n";
    }
    float x;
};
 
class Teacher
{
    public:
    Teacher()
    {
        cout << "Конструируем Teacher\n";
        y = 0;
    }
    Student s;
    int y;
};
 
int main()
{
    Student s;
    cout << "вывожу s.x  x = " << s.x << " main()\n";
    s.x = 3.2;
    cout << "вывожу s.x  x = " << s.x << " main()\n";
    cout << "объявляю объект t класса Teaher\n";
    Teacher t;
    cout << "вывожу s.x  x = " << s.x << " main()\n";
    cout << "Возвращаемся в main()\n";
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru