170 похожих чатов

Я сто лет как перекатился на джаву, решил тут в

плюсы потыкать

пытался запилить заоверинжиниренный калькулятор с мапой "строчка -> команда" (где команда – интерфейс), но такую мапу создать не удалось, только с указателем на команду

я правильно понимаю, что это как-то связано с политикой оператора [] "если объекта по ключу нет, то будет создан"? ну типа абстрактный класс хрен создашь, тогда как указатель – это по сути просто инт

7 ответов

8 просмотров

Нет, это никак не связано

Шли код а не слова, что там тебе не создать...

Andre-Macareno Автор вопроса
Ilya Zviagin
Шли код а не слова, что там тебе не создать...

ну вот давай представим себе, что у меня есть интерфейс обработчика команд class OperationCommandProcessor { public: virtual State execute(State oldState, int operand) const = 0; }; и я наделал кучу разных реализаций на сложение-вычитание-etc: auto addCmd = AddCommandProcessor(); auto subCmd = SubtractCommandProcessor(); auto mulCmd = MultiplyCommandProcessor(); auto divCmd = DivideCommandProcessor(); и теперь хочу собрать в мапу "строковая команда -> обработчик" если я описываю как-то так, то всё прекрасно: const std::map<std::string, OperationCommandProcessor*> commands = { { "add", &addCmd }, { "sub", &subCmd }, { "mul", &mulCmd }, { "div", &divCmd } }; но стоит мне убрать создание обработчиков в пейр и убрать звездочку – код уже не собирается

Andre-Macareno Автор вопроса
Ilya Zviagin
Ну, State а бы убрал... Но ок

я не оценку спрашиваю :)

Andre Macareno
ну вот давай представим себе, что у меня есть инте...

но стоит мне убрать создание обработчиков в пейр и убрать звездочку – код уже не собирается Зачем убирать?

Похожие вопросы

Обсуждают сегодня

Сообщение* в закодированном виде. То есть, просто сделать sendMessage?text=Привет бла-бла! не получится, надо в HEX переводить, и добавлять процент, типа такого: sendMessage?t...
КТ315
21
А случайно нет ли в паскале штатной возможности передать указатель и количество туда где array of в качестве аргумента?
zamtmn
25
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
Только такой if ($modx->event->name == 'OnBeforeCartItemAdding') { $meta = $params['item']['meta']; $lang = $modx->getConfig('_lang'); // проверяем, задана ли опция i...
Multi Web
1
Всем привет. Испытываю проблемы в работе БД, а именно огромного роста логов, такого характера: 024-05-16 18:39:07 +05 sentry sentry [unknown] 1050169 7-1 app-sentry01.corp.ru>...
Alexey
2
Ну раз я пока тут, задам пару глупых вопросов. Зачем писать на ассемблере если компилятор довольно умный, а ассемблер много времени занимает? В каких прикладных задачах сейчас...
Максим Рябцев
20
Хм. А телеграм апи работают через HTTP?
The Bird of Hermes
14
Почему Telegram пишет, что объект media не найден, хотя на самом деле я его передаю? Делаю на urllib, без зависимостей, так надо. Вызываю метод sendMediaGroup с таким JSON: ...
Alexey S
1
Если подытожить: По мнению Розыча и Хемуля и др. - предпочтительно по возможности объявлять в секции имплементации потому-что: 1) Выше скорость компиляции 2) Не замусоривается...
notme
7
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Карта сайта