|
30 / 8 / 2
Регистрация: 20.08.2011
Сообщений: 615
|
|||||||||||
Как узнать количество аргументов конструктора?13.02.2015, 15:33. Показов 4727. Ответов 46
Метки нет (Все метки)
Добрый день.
Как на этапе компиляции узнать, сколько аргументов имеет конструктор некоторого класса? Нужно в шаблонной функции по переданному классу Type определить количество: 1. Если аргументов 1 шт, то
0
|
|||||||||||
| 13.02.2015, 15:33 | |
|
Ответы с готовыми решениями:
46
Узнать количество пеледаваемых в функцию аргументов
|
|
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
||||||
| 14.02.2015, 15:56 | ||||||
|
ну подозреваю что он говорит о том, что у Type нет конструктора, который принимает два или один параметр. зависит от Тype. Тут надо делать вызывать специальные create функции, которые либо перегружены, либо специализированы. В посте #6 они уже были:
параметр db просто игнорировать.
0
|
||||||
|
19506 / 10109 / 2464
Регистрация: 30.01.2014
Сообщений: 17,834
|
|||||||
| 14.02.2015, 15:58 | |||||||
1
|
|||||||
|
30 / 8 / 2
Регистрация: 20.08.2011
Сообщений: 615
|
|||||||
| 14.02.2015, 21:50 [ТС] | |||||||
|
Спасибо, заработало!
0
|
|||||||
|
1500 / 1146 / 165
Регистрация: 05.12.2011
Сообщений: 2,279
|
|
| 15.02.2015, 00:31 | |
|
наверно потому, что результат
bool2type<std::is_constructible<T, QWidget>::value всегда false. вместо T тут надо тип объекта _db поставить наверно bool2type<std::is_constructible<decltype(_db), QWidget>::value
0
|
|
|
710 / 284 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
|
||||||
| 15.02.2015, 10:58 | ||||||
|
Воу-воу-воу, что как-то у вас все сложно. Можно ж sfinae замутить через автовывод возвращаемого типа. Т.е.:
Пололлировал с предложения впилить runtime полиморфизм не смотря на то, что все известно в compile-time. Вот что с людьми MFC делает
3
|
||||||
|
30 / 8 / 2
Регистрация: 20.08.2011
Сообщений: 615
|
|
| 16.02.2015, 09:04 [ТС] | |
|
Лаконично.
Вопрос: 1. Как сделать, чтобы make() возвращал указатель (т.е. new T(_db, ui->tabWidget) или new T(ui->tabWidget))? 2. Можно ли избавиться от аргументов в функции make()? Те переменные, которые передаются в конструктор класса имеют глобальную область видимости.
0
|
|
|
710 / 284 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
|
|||||||
| 16.02.2015, 12:48 | |||||||
1
|
|||||||
| 16.02.2015, 12:48 | |
|
Неправильная передача аргументов конструктора класса Изменение параметров конструктора без аргументов Как узнать имя конструктора объекта Три конструктора с разным количеством аргументов, какой использовать? Странное расположение в памяти аргументов функции с неизвестным количество аргументов Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|