1 / 1 / 0
Регистрация: 12.10.2019
Сообщений: 18
|
|||||||||||
1 | |||||||||||
Ошибка с контейнером мап12.10.2019, 09:53. Показов 2966. Ответов 11
Столкнулся с проблемой. При компилировании программы - выводит ошибку, думаю это связано с контейнером map.
При удалении строчек из функции create, файла .h - всё запускается Главный файл .cpp:
0
|
12.10.2019, 09:53 | |
Ответы с готовыми решениями:
11
map<Int,MYMAP>, или мап хранящий мап Ошибка с map контейнером Ошибка в роботе с контейнером: set iterator not incrementable Гистограмка = буутс + мап |
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
12.10.2019, 10:04 | 2 |
а какую ошибку то пишут ?
0
|
1 / 1 / 0
Регистрация: 12.10.2019
Сообщений: 18
|
|
12.10.2019, 10:20 [ТС] | 3 |
Алексей1153, Код ошибки = 0x80070002
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
12.10.2019, 10:30 | 4 |
0
|
1 / 1 / 0
Регистрация: 12.10.2019
Сообщений: 18
|
|
13.10.2019, 07:16 [ТС] | 5 |
Алексей1153, 1>c:\program files (x86)\microsoft visual studio\2017\professional\vc\tools\msvc\14.16.27023\include\tuple(1305): error C2512: Hero_Animation::Hero_Animation: нет подходящего конструктора по умолчанию
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
||||||
13.10.2019, 07:44 | 6 | |||||
Kloody, ну так тебе компилятор прямо пишет, что нужно сделать- надо добавить конструктор Hero_Animation по умолчанию, либо вызывать существующий конструктор.
Первое понятно. второе стреляет вот тут
0
|
1 / 1 / 0
Регистрация: 12.10.2019
Сообщений: 18
|
|
13.10.2019, 07:56 [ТС] | 7 |
Алексей1153, спасибо, что откликаешься. Как сделать по умолчанию - не знаю.
Но почему Sheet_With_Animation.insert() , а не Sheet_With_Animation.emplace(), ведь данные я вношу с файла .cpp. Да и вроде так правильно - Sheet_With_Animation[name], пересмотрел гайдов по этим случаям.
1
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
||||||||||||||||
13.10.2019, 08:32 | 8 | |||||||||||||||
Сообщение было отмечено Kloody как решение
Решение
вот тут требуется вызов конструктора по умолчанию (внутри оператора [] мапы это требуется)
1
|
1 / 1 / 0
Регистрация: 12.10.2019
Сообщений: 18
|
||||||
13.10.2019, 10:35 [ТС] | 9 | |||||
Алексей1153, то есть, мне нужно удалить конструктор с параметром и вставить по умолчанию? Или ничего не удалять и просто вставить конструктор по умолчанию?
Запись по моему пониманию
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
13.10.2019, 11:06 | 10 |
Kloody, если используешь insert , то конструктор по умолчанию в данном случае не нужен. Но можешь его и оставить, он не будет мешать. С ним твой прежний вариант получится, кстати, тоже. То есть с вызовом оператора []
0
|
1 / 1 / 0
Регистрация: 12.10.2019
Сообщений: 18
|
|
13.10.2019, 11:24 [ТС] | 11 |
Алексей1153, если я использую инсерт, но удаляю конструктор по умолчанию, то программа не работает и выдает ошибку, если не удаляю - все работает. Не понимаю как это работает. Вы мне помогли, спасибо. Дальше, надеюсь, разберусь сам.
0
|
фрилансер
5498 / 5094 / 1047
Регистрация: 11.10.2019
Сообщений: 13,341
|
|
13.10.2019, 11:36 | 12 |
Сообщение было отмечено Kloody как решение
Решение
Kloody, работает это так - если конструктор используется в программе, он должен быть объявлен )
0
|
13.10.2019, 11:36 | |
13.10.2019, 11:36 | |
Помогаю со студенческими работами здесь
12
Мап видеопамяти или скриншот из r0 Удаление ключей в коллекции мап Внедрение длл в процесс (мануал мап) Работа с контейнером Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |