|
"C with Classes"
|
|
Почему vector v{vector{1, 2} }; имеет тип vector<int>24.07.2020, 17:14. Показов 1245. Ответов 12
Метки нет (Все метки)
0
|
|
| 24.07.2020, 17:14 | |
|
Ответы с готовыми решениями:
12
error LNK2019: ссылка на неразрешенный внешний символ "public: __thiscall Vector<int>::Vector<int>(void)" (?0?$Vector@H@@QAE@XZ) в функции _main
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||
| 24.07.2020, 17:29 | |||
1
|
|||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|
| 24.07.2020, 17:31 | |
|
_stanislav,
Вложенный вектор формируется на основе конструктора который принимает initializer_list из int-ов, соответственно получаем вектор интов. Внешний вектор это просто обьект который формируется на основе вложенного вектора с типом vector<int>, поэтому такой тип. То есть внешний вектор это вектор из vector<int>. Принцип его формирования такой же как и для вложенного вектора Добавлено через 1 минуту Уточню что тип будет vector<vector<int>> а не vector<int>
1
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
||
| 24.07.2020, 17:36 | ||
|
1
|
||
|
"C with Classes"
|
|
| 24.07.2020, 17:38 [ТС] | |
|
oleg-m1973, Undisputed, а понятно вроде, вывод происходит при вызове копирующего конструктора, а не конструктора с
initializer_list?
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|
| 24.07.2020, 17:42 | |
|
1
|
|
|
Фрилансер
3709 / 2083 / 567
Регистрация: 31.05.2009
Сообщений: 6,683
|
|||||||
| 24.07.2020, 17:49 | |||||||
|
Чтобы был вектор векторов, надо либо размерность указать, либо ещё одно скобки:
2
|
|||||||
|
"C with Classes"
|
|
| 24.07.2020, 17:55 [ТС] | |
|
0
|
|
|
6772 / 4565 / 1844
Регистрация: 07.05.2019
Сообщений: 13,726
|
|||||||
| 24.07.2020, 17:58 | |||||||
1
|
|||||||
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|||
| 24.07.2020, 18:43 | |||
|
Я проверял на gcc 7.4.0 и тип выводился как vector<vector<int>> похоже в более свежих версиях это исправлено и тип выводится как vector<int> _stanislav, сори, я ошибся Добавлено через 17 минут _stanislav, Убери плиз плюс который ты поставил на этот пост Почему vector v{vector{1, 2} }; имеет тип vector<int> это был очень неправильный пост
1
|
|||
| 24.07.2020, 18:46 [ТС] | |
|
0
|
|
|
901 / 478 / 93
Регистрация: 10.06.2014
Сообщений: 2,700
|
|||||||
| 24.07.2020, 18:54 | |||||||
|
кстати то чем я говорил вроде как изначально и было только потом решили убрать такой вариант и выводить тип в подобных случаях как vector<int> http://www.open-std.org/jtc1/s... 702r1.html
1
|
|||||||
|
Вездепух
12938 / 6805 / 1821
Регистрация: 18.10.2014
Сообщений: 17,225
|
||
| 24.07.2020, 21:09 | ||
std::vector как vector<int>. В обоих случаях вывод производится через неявно сгенерированные deduction guides. Для внутреннего std::vector это неявный deduction guide, полученный из конструктора для std::initializer_list<int>.Для внешнего std::vector это специальный неявный deduction guide, сгенерированный для копирования.Если вопрос именно в том, почему во втором случае выбран конструктор копирования (перемещения), а не std::initializer_list<std::vector<int>>, то это потому, что, как уже заметил oleg-m1973, для обработки случая копирования специально сделано исключение, т.е. в алгоритме генерации неявных deduction guides (https://en.cppreference.com/w/... _templates) искусственным образом добавляется правило для копирования"In any case, an additional fictional function template derived as above from a hypothetical constructor C(C) is added, called the copy deduction candidate." Этот copy deduction candidate обычно будет более специализированным, чем вариант с std::initializer_list<std::vector<int>>, т.е. "побеждать" будет именно копирование.
3
|
||
| 24.07.2020, 21:09 | |
|
Помогаю со студенческими работами здесь
13
Цикл: Создайте класс Matrix на базе вектора vector<vector<int>>. Ошибка [Linker error] undefined reference to `Vector::Vector(int)' vector<Struct2{int,vector<struct1>}> или множественное наследование ... Указатель на объект вектор в векторе vector < vector<int>* >* Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|