Russian Qt Forum
Июля 01, 2025, 08:35 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: конструктор с параметрами  (Прочитано 11463 раз)
Chester
Гость
« : Марта 18, 2010, 16:44 »

доброго времени суток!!!
Хотелось бы у вас совета спросить...вот если я создаю в классе конструктор с параметрами... нужно ли мне создавать конструктор по умолчанию (без параметров), если не собираюсь таковой использовать Подмигивающий)
Кому не трудно,тветьте пожалуйста.. заранее спасибо!!
Записан
hackoff
Гость
« Ответ #1 : Марта 18, 2010, 16:47 »

не нужно
Записан
alexman
Гость
« Ответ #2 : Марта 18, 2010, 16:50 »

Если только для того, чтобы проинициализировать поля класса...
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #3 : Марта 18, 2010, 16:51 »

Иногда бывает нужно, напр. если такие объекты помещаются в vector
Записан
niXman
Гость
« Ответ #4 : Марта 18, 2010, 16:53 »

пустой конструктор написать не сложно.
пусть он не используется, но и не помешает.
Записан
alexman
Гость
« Ответ #5 : Марта 18, 2010, 16:55 »

Даже ради читабельности кода он не помешает!
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #6 : Марта 18, 2010, 16:58 »

>>Иногда бывает нужно, напр. если такие объекты помещаются в vector
конструктор по умолчанию компилятор сам создаст, для контейнеров важно, чтобы он был в public-области, а не private, как у QWidget'ов
Записан

Юра.
f-r-o-s-t
Гость
« Ответ #7 : Марта 18, 2010, 17:19 »

>>Иногда бывает нужно, напр. если такие объекты помещаются в vector
конструктор по умолчанию компилятор сам создаст, для контейнеров важно, чтобы он был в public-области, а не private, как у QWidget'ов

Если есть конструктор с параметрами, то не создаст.
Действительно если есть такая необходимость то нужно создать, как в примере с контейнерами.
Записан
Amigo_sa
Гость
« Ответ #8 : Марта 18, 2010, 17:29 »

>>Иногда бывает нужно, напр. если такие объекты помещаются в vector
конструктор по умолчанию компилятор сам создаст, для контейнеров важно, чтобы он был в public-области, а не private, как у QWidget'ов
Так же в созданных по умолчанию конструкторах все указатели, если таковые используются, будут не проинициализированы, поэтому в этом случае его нужно написать руками.
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #9 : Марта 18, 2010, 17:41 »

>>Если есть конструктор с параметрами, то не создаст.
Хм, не знал. Видимо ещё не нарвался на связанную с этим ошибку компилятора.
Записан

Юра.
Chester
Гость
« Ответ #10 : Марта 18, 2010, 18:27 »

Спасибо всем за ответы!!!

>>Иногда бывает нужно, напр. если такие объекты помещаются в vector
конструктор по умолчанию компилятор сам создаст, для контейнеров важно, чтобы он был в public-области, а не private, как у QWidget'ов

Если есть конструктор с параметрами, то не создаст.
Действительно если есть такая необходимость то нужно создать, как в примере с контейнерами.


Вот поэтому и спрашиваю  Улыбающийся... я работаю с БД, и есть формочка,которая отображает некую таблицу из БД, связанную с главной табличкой по ID. И в конструкторе передается этот ID,для отображения данных по конкретному объекту. Просто без этого параметра формочка теряет всякий смысл... Если только она будет просто рисоваться без всяких данных.
Просто боюсь,что без конструктора по умолчанию может не корректно работатать будет класс...
Записан
BRE
Гость
« Ответ #11 : Марта 18, 2010, 18:34 »

Вот поэтому и спрашиваю  Улыбающийся... я работаю с БД, и есть формочка,которая отображает некую таблицу из БД, связанную с главной табличкой по ID. И в конструкторе передается этот ID,для отображения данных по конкретному объекту. Просто без этого параметра формочка теряет всякий смысл... Если только она будет просто рисоваться без всяких данных.
Просто боюсь,что без конструктора по умолчанию может не корректно работатать будет класс...
Все будет корректно, не бойся.  Улыбающийся
Не нужен пустой конструктор, а точнее не возможен (как в твоем случае) - не пиши. Это лучше, чем придумывать костыли, только ради того, что бы написать конструктор по умолчанию.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.021 секунд. Запросов: 20.