Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
RazrFalcon |
19.9.2011, 12:04
Сообщение
#1
|
![]() Zombie Mod ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1654 Регистрация: 24.5.2010 Из: Харьков Пользователь №: 1752 Спасибо сказали: 64 раз(а) Репутация: 212
|
В чем разница между этими вариантами?
1) Теперь в хедере пишем: и2) 3)Я понимаю что это вроде бы основы, но четко разницу я так и не понял до сих пор... |
|
|
|
|
Sokoloff |
19.9.2011, 13:41
Сообщение
#2
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: 11
|
Отличие между первым и остальными вариантами простое.
В первом варианте используется глобальная переменная, она одна на всех, все классы будут иметь одно значение. Если кто-то где-то поменял ее, все увидят новое значение. В других вариантах каждый объект класса имеет свою переменную. Пример: Выведет Теперь про 2 и 3 варианты. В 2 создастся экземпляр класса (вызывается конструктор без параметров), а потом присваивается значение. В 3 сразу создается экземпляр с нужным значением, т.е. используется конструктор с параметром. Для int-а разницы нет, но если вместо будет класс (особенно тяжелый), то 3-й выриант эффективнее. Еще есть такое понятие как безопасный конструктор, но пока можешь с этим не парится. |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 14.12.2025, 20:04 |