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

Наследование классов и конструкторы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ошибка линковщика LNK2019: ссылка на неразрешенный внешний символ http://www.cyberforum.ru/cpp-beginners/thread927381.html
полный текст: Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ _WTSSendMessageA@40 в функции _main D:\Projects\ConsoleApplication91\ConsoleApplication91\Main.obj ConsoleApplication91 ...
C++ нахождение переменной Есть такая задачка: Напишите программу, в которой функция main ( ) вызывает определяемую пользователем функцию, которая в качестве аргумента принимает расстояние в световых годах и возвращает... http://www.cyberforum.ru/cpp-beginners/thread927341.html
C++ undefined symbol: * in Unknown on line 0
Вобщем написал некий модуль для php, он корректно скомпилировался но под линукс при запуске php пишет PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php5/20100525+lfs/mylib.so' -...
C++ Охота на ошибки, при неправильном вводе
В общем проблема такая. Если есть переменная типа int, а туда с клавы вводят какой-нибудь символ, то программе это не нравится и она начинает блевать. Т.е. в потоке cin остается кое-что нехорошее,...
C++ Считывание чисел до нажатия Enter http://www.cyberforum.ru/cpp-beginners/thread927303.html
Нужна функция, благодаря которой цикл будет выполнятся до нажатия Enter.
C++ Функции. Генерация строк Здравствуйте, форумчане. Помогите реализовать программу. Напишите программу на С++, которая использует три определяемых пользователем функции ( включая main ( ) ) , и результатом ее выполнения... подробнее

Показать сообщение отдельно
Ilot
Модератор
Эксперт С++
1823 / 1181 / 232
Регистрация: 16.05.2013
Сообщений: 3,118
Записей в блоге: 5
Завершенные тесты: 1
23.07.2013, 08:54
Цитата Сообщение от Praktolock Посмотреть сообщение
Объявление указателя не приводит к вызовам конструкторов и вообще к каким-либо действиям.
Тогда как вы ябъясните:
Вывод:
form::form()
button::button()
form::~form()
Немного изменим код:
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
//#include <stdio.h>
#include<iostream>
#include <conio.h>
using namespace std;
class form
{
public:
    int count;
    form(): count(0)
    {printf("form::form()\n"); count += 1; cout << "Count: " << count << endl;};
 ~form(){printf("form::~form()\n");};
};
 
class button:public form
{
public:
    button(){printf("button::button()\n"); count += 1; cout << "Count: " << count << endl;};
 ~button(){printf("button::~button()\n");};
};
 
 
int main()
{
 form*obj;
 button*btn=new button;
 obj=btn;
 delete obj;
 _getch();
 return 1;
}
Как по вашему инкрементируется count если:
Объявление указателя не приводит к вызовам конструкторов и вообще к каким-либо действиям.
0
Миниатюры
Наследование классов и конструкторы  
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru