![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| andrew_121 |
|
||||||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Всем привет.
Допустим есть класс:
По стандартному их инициализировать можно так:
А возможно это сделать так?
Пробовал в Mingw и в gcc, работает. Интересны плюсы и минусы, и подводные камни. Это сообщение отредактировал(а) andrew_121 - 21.8.2008, 18:46 -------------------- Удалил аккаунт. Прощайте! |
||||||
|
|||||||
| Mayk |
|
|||
![]() ^аВаТаР^ сообщение>> ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 2616 Регистрация: 22.5.2005 Где: за границей разум а Репутация: 45 Всего: 134 |
такой способ затрёт vtable если она есть. соответственно вызов любой виртуальной ф-ции обрушит программу
Добавлено @ 18:55
Это сообщение отредактировал(а) Mayk - 21.8.2008, 18:56 -------------------- Здесь был кролик. Но его убили. Человеки < кроликов, йа считаю. |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Mayk, Помоему...Вы меня не поняли...
Если сделать так как Вы приводите - Естественно! Я же обнуляю переменные в конструкторе. -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| UnrealMan |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 722 Регистрация: 30.3.2006 Репутация: 27 Всего: 32 |
||||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
и проследить что помешенные в POD структуру поля тоже PODы .. (и еше всегда помнить что в эту структуру нельзя помешать не POD.. а понадобится через полгода внести изменения .. когда уже забыли каким способом Вы обнуляете поля и долго долго будете искать причину падения проги .. ) |
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
это кривые костыли, лучше так не делать
вообще есть такая вещь как наследование, о которой memset не знает, соответственно затретъ данные предка, которые к тому моменту уже проинициализированы. в общем это слишком чревато разными ошибками... например, если в классе есть члены-данные, которые имеют внутри себя указатели на данные и дефолтный конструктор...
|
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
Все, вопрос исчерпан.
Всем спасибо. -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
| NiJazz |
|
|||
![]() Jazz coder ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2286 Регистрация: 10.8.2003 Где: Москва Репутация: 1 Всего: 23 |
А если будут виртуальные функции?
|
|||
|
||||
| Lazin |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3820 Регистрация: 11.12.2006 Где: paranoid oil empi re Репутация: 41 Всего: 154 |
это вообще жопакеды |
|||
|
||||
| andrew_121 |
|
|||
![]() Кодофей ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3448 Регистрация: 3.1.2008 Репутация: 6 Всего: 33 |
NiJazz
Lazin Парни. Ну вы что на самом деле думаете что я собрался таким образом обнулять классы с виртуальными функциями? Блин...это только для структур, ненаследуемых! Хорошь прикалыватся -------------------- Удалил аккаунт. Прощайте! |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |