Alexey
отладочная информация нормально работает и помогает в связке с исходиком. это имелось в виду
Denis Kalanov
привет.
Вдруг, кому-то будет интересно >
Конференция Linux Piter #2 /
11 - 12 ноября в / Питер
www.LinuxPiter.ru
Ned
Может ли, вообще говоря, у шаблонного класса быть шаблонный же конструктор?
Ned
В том смысле, что с другим параметром.
Rafael 🌵
Kirill
да, но тот шаблонный параметр который передается в конструкторе нельзя будет передать в другое место вне конструктора
Kirill
вот так сделать не получится в общем
template <T>
class someclass
{
public:
template<G>
someclass(G data):mData(data)
private :
G mData
}
Kirill
но если
вместо G передается класс который имеет интерфейс iSomeInterface то должно взлететь так вроде
template <T>
class someclass
{
public:
template<G>
someclass(G * data):mData(data)
private :
iSomeInterface* mData
}
Ned
Ned
Кстати, как передавать функцию?
Ned
Через указатель?
Ned
Функцию в другую, чтобы первая была вызвана во второй
Крылатый
Если не колбэк какой, то суй по значению)
Ned
Колбэк
Анатолий
тут плюсы онли или решётка тоже?
Крылатый
Ну дык так и сделой)
Крылатый
Ну или наверни std::function
Ned
Йа не хотеть стл
Крылатый
А это шо?
Крылатый
Чем плохо?)
Ned
Йа не знать стл
Крылатый
._.
Ned
Йа ебацца даже с ostream
Ned
Но успешно. Родилась оператор
Ned
<<
Ned
😂
Крылатый
int foo(int x, std::function<int(int)> bar) { return bar(x) }
Крылатый
;
Крылатый
Всё.
Крылатый
Чо тут ебацца.
Ned
Тогда блядоюзеру придётся делать свой бар с стл
Ned
Он может бояцца
Ned
У меня сэмпл проект, заточен под студентоту
Ned
И под хедхантеров которые просят моего кода
Ned
Велосипед, словом, никому не нужный
Ned
Который я купил в ашане и прокачиваю до нормального
Крылатый
Ничо ему не придётся делать.
Крылатый
type erasure, ёпта
Ned
type erasure, ёпта
Эт чё за зверь? Типа когда компиль сам параметры в темплейты подставляет в компилтайме?
Ned
YA NOOBUS, всё ясно
Rafael 🌵
а можно как-то вне функции получить ее имя?
Andrey
Rafael 🌵
а как тогда RPC делают? что за фигня :\
Andrey
Крылатый
Легко)
Крылатый
ент вон
Rafael 🌵
Крылатый
Это вот.*
Крылатый
Крылатый
RemoteObject("shit").Invoke("fuck", ... )
Крылатый
Выглядит как говно, но щито поделать.
Rafael 🌵
Крылатый
Можно ещё макраснёй обмазать, если в рамках одного приложения...
Andrey
Крылатый
...а если чо внешнее... ой вей.
Крылатый
Rafael 🌵
Rafael 🌵
а тут такой облом
Крылатый
Хотя это фу.
Крылатый
Я бы вот ещё раскурил Haskell Cloud, как там сделано
Rafael 🌵
т.е на плюсах не реализовать RPC?
Крылатый
Вот была бы компилтайм рефлексия в плюсах!
Крылатый
Alexey
Возьми трифт или protocol buffers
Alexey
И посмотри
Alexey
Легко
Andrey
а тут такой облом
да этож целая тема, как ты там реализовать RPC собрался, какой протокол и т.д.
Rafael 🌵
как протокол я решил юзать redis protocol, который будут юзать серверный и клиентский стабы
ttldtor
редис протокол?)
Rafael 🌵
и я думал что я смогу просто передать стабу функцию, и стаб уже сам достанет данне аргументов, и название функции
Rafael 🌵
ttldtor
тебе не кажется это жестью?
Alexey
Дичь какая-то
Крылатый
Я думал, что любой протокол языконезависимый.