![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
всем привет.
вопрос в теме. аргументы за, и против? |
|||
|
||||
| Alca |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3993 Регистрация: 14.6.2006 Репутация: 7 Всего: 50 |
все ли члены класса? |
|||
|
||||
| Fazil6 |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1653 Регистрация: 3.5.2006 Где: Минск Репутация: 35 Всего: 60 |
||||
|
||||
| Abyx |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
зачем спрашивать одно и то же на разных форумах %)
то что инициализировать не обязательно - инициализировать не обязательно %) |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Все члены должны инициализироваться в конструкторе. А в списке инициализации или в "теле" - не так важно в общем случае. Например сложные выражения я предпочитаю писать в "теле", если, конечно, можно оставить член без инициализации. Кроме того, если член класса имеет конструктор по-умолчанию, то упоминать его не стоит, это только засоряет код.
-------------------- ... |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
||||
|
||||
| mrbrooks |
|
|||
![]() трололомен ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4259 Регистрация: 4.10.2006 Где: Дол Гулдур Репутация: 2 Всего: 306 |
честно говоря не совсем ясна проблема. в чем соль то ТС? что мешает жить?
|
|||
|
||||
| Abyx |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
||||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Почему же? Я ведь не написала - инициализироваться явно. Просто "инициализироваться".
Собственно, речь может идти в основном о встроенных типах, которые по-умолчанию не инициализируются. -------------------- ... |
|||
|
||||
| boostcoder |
|
||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
да. к примеру:
а нет проблемы. просто меня часто критикуют коллеги за придирчивость к коду. вот сегодня с утра спорили об этом с этим все понятно. но спор возник из-за переменных классового типа. |
||||
|
|||||
| Abyx |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 601 Регистрация: 3.11.2009 Репутация: 1 Всего: 10 |
http://wasm.ru/forum/viewtopic.php?id=38086 странно видеть темы про инициализацию членов класса каждые два дня |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
В смысле, инициализировать ли явно члены, имеющие нормальные конструкторы по-умолчанию? Тогда я просто не поняла, пардон. Считаю, что не надо. Код типа: CMyCompounClass::CMyCompoundClass(): m_FirstMember (CFirstMember()), m_SecondMember (CSecondMember()), ... смотрится на редкость уродливо. И никакой новой информации не сообщает. Ну есть у члена конструктор по-умолчанию. Так если бы его не было, компилятор орал бы как резаный. -------------------- ... |
|||
|
||||
| boostcoder |
|
||||||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
я на том форуме не реган. так что хз о чем вы. Добавлено @ 13:54 Earnest, какой-то не правильный у вас пример. полагаю так:
по моему наоборот. Это сообщение отредактировал(а) boostcoder - 30.7.2010, 14:14 |
||||||
|
|||||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
имхо имелось ввиду чуть _проще_: m_FirstMember (), Добавлено @ 13:58 boostcoder, имхо писать нужно минимум, но так чтоб был ясен смысл происходящего.. Если в конкретном случае необходимо явно указать, то указывайте, иначе поберегите клавиатуру Это сообщение отредактировал(а) mes - 30.7.2010, 13:58 |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
мнение большинства понятно. всем спасибо.
|
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |