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

Шаблоны мб помогут? Что конкретно сделать надо?

18 ответов

23 просмотра

ну есть условная функция parseJson(const Json::Value&, const std::string& field, double& res), где последний аргумент может иметь тиа double&, std::string&, int& и тд мне нужно, чтобы логика с типом double& в одном из файлов была другой

Flower-Surgeon Автор вопроса
Kirill 🚜
ну есть условная функция parseJson(const Json::Val...

Боюсь, что так сделать будет нельзя.

Flower Surgeon
Боюсь, что так сделать будет нельзя.

Да, я не выспался просто, уже понял что отстойная затея

Kirill 🚜
ну есть условная функция parseJson(const Json::Val...

Если есть возможность изменить parseJson, то можно переписать её так, чтобы была возможность подкинуть ей в параметрах стратегии, и через них делать кастомизацию. Короче, добавить доп. точки кастомизации. Если изменить не можешь - сделать не получится

Kirill Bolshakov
Если есть возможность изменить parseJson, то можно...

Действительно можно сделать так, спасибо

Kirill 🚜
ну есть условная функция parseJson(const Json::Val...

не лучше ли другую функцию написать для этого фаила?

Aleksei Budyakov
не лучше ли другую функцию написать для этого фаил...

Я так и сделал, но это же некрасиво. Для всех типов используется parseJson, а для double - parseJsonDoubleCustom

Kirill Bolshakov
Если есть возможность изменить parseJson, то можно...

А стратегии это условно говоря флаги, которые выбирают внутри функции какую ветвь if-else выполнять, или что это?

Kirill 🚜
Я буду делать через инлайнящиеся лямбды

Чтоб так сделать уже шаблоны должны быть

Kirill 🚜
Я буду делать через инлайнящиеся лямбды

upd: не буду, тимлид не разрешил )))) :(

Kirill Bolshakov
Гугли паттерн "Стратегия"

Просто наследование разных алгоритмов от одного интерфейса и передача полиморфной базы некоторому классу ?

Aleksei Budyakov
Просто наследование разных алгоритмов от одного ин...

Это Java style, в С++ можно изящнее сделать. Ты суть пойми

Kirill Bolshakov
Это Java style, в С++ можно изящнее сделать. Ты су...

Изящнее - это передать в шаблон тип функции и инстанциировать его как член класса ? (либо инстанциировать std::function)

Kirill Bolshakov
Да просто функцию передать - уже заебись

Круто. Теперь хочу переписать часть своего уже написанного кода, т.к раньше Java Style делал подобное

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта