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

Инициализация конструктора по умолчанию - C++

Восстановить пароль Регистрация
 
Twi7ter
 Аватар для Twi7ter
3 / 3 / 1
Регистрация: 27.03.2013
Сообщений: 147
19.05.2013, 14:20     Инициализация конструктора по умолчанию #1
почему если инициализировать поля класса в конструкторе по умолчанию так:
C++
1
2
3
4
5
MyClass::MyClass()
{
    int m=0;
    int t=0;
}
то поля не обнулятся,а если так:
C++
1
2
3
4
5
MyClass::MyClass()
{
     m=0;
     t=0;
}
то все нормально?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2013, 14:20     Инициализация конструктора по умолчанию
Посмотрите здесь:

C++ Инициализация членов производного кл. из конструктора базового кл.
C++ инициализация конструктора класса
C++ Инициализация в теле конструктора или в списке инициализации.
Инициализация конструктора базового класса C++
Нет подходящего конструктора по умолчанию. Наследование C++
Инициализация статических объектов без конструктора C++
C++ Нет подходящего конструктора по умолчанию
C++ Инициализация с помощью конструктора без параметров. Почему не нужны скобки?

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11822 / 6801 / 769
Регистрация: 27.09.2012
Сообщений: 16,869
Записей в блоге: 2
Завершенные тесты: 1
19.05.2013, 14:27     Инициализация конструктора по умолчанию #2
C++
1
2
3
4
5
MyClass::MyClass()
{
    int m=0;//Новая локальная для функции переменная типа int
    int t=0;//Новая локальная для функции переменная типа int
}
C++
1
2
3
4
5
MyClass::MyClass()
{
     m=0;//this->m
     t=0;//this->t
}
Добавлено через 36 секунд
Цитата Сообщение от Twi7ter Посмотреть сообщение
если инициализировать поля класса
И это присвоение, а не инициализация
Yandex
Объявления
19.05.2013, 14:27     Инициализация конструктора по умолчанию
Ответ Создать тему
Опции темы

Текущее время: 00:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru