Size: a a a

2020 August 20

CD

Constantine Drozdov in pro.cxx
Konstantin Osipov
я так понимаю чтобы добавить ещё один сильный тип достаточно его даже у себя объявить, главное в нужном namespace?
ну там объявлен оператор на весь неймспейс, да
источник

CD

Constantine Drozdov in pro.cxx
дальше допиливаем напильником, если нужно типы хитрее считать
источник

KO

Konstantin Osipov in pro.cxx
смысл в том, что для того чтобы этим пользоваться, достаточно подлкючить нужный хедер и объявить свой тип в этом namespace.
источник

CD

Constantine Drozdov in pro.cxx
Konstantin Osipov
смысл в том, что для того чтобы этим пользоваться, достаточно подлкючить нужный хедер и объявить свой тип в этом namespace.
это самый мягкий способ расширения, да
источник

KO

Konstantin Osipov in pro.cxx
ну это удобно.
источник

CD

Constantine Drozdov in pro.cxx
Konstantin Osipov
ну это удобно.
там поправочка, наверное надо
       struct namespace_tag{};
       namespace_tag get_namespace(auto);
после + объявить, чтобы вот это нормально прошло
https://godbolt.org/z/a86abG
источник

CD

Constantine Drozdov in pro.cxx
в MSVC без twoPhase конечно эта заглушка не поможет
источник

KO

Konstantin Osipov in pro.cxx
главное идея. спасибо.
источник

KO

Konstantin Osipov in pro.cxx
у нас g++
источник

CD

Constantine Drozdov in pro.cxx
в общем, надо защититься от qualified вызовов
источник

CD

Constantine Drozdov in pro.cxx
чтобы случайно по ADL не нашлось когда не надо
источник

D

Danya in pro.cxx
Constantine Drozdov
в MSVC без twoPhase конечно эта заглушка не поможет
А в MSVC не two phase?
источник

CD

Constantine Drozdov in pro.cxx
Danya
А в MSVC не two phase?
twoPhase- может быть везде подряд (скажем, у меня в проекте)
источник

CD

Constantine Drozdov in pro.cxx
хм... кажется, надо почитать про лукапы концептов
источник

CD

Constantine Drozdov in pro.cxx
источник
2020 August 21

DS

Dmitry Sokolov in pro.cxx
Konstantin Osipov
и с помощью шаблонов я хотел избежать дублирования кода всех операторов
Завернуть в define :)
DECLARE_ENUM_BITOPS(E) etc.
источник

JJ

Joe Joe in pro.cxx
ну абсолютно рабочий же вариант со строго типизированными enumами
источник

JJ

Joe Joe in pro.cxx
без треша с препроцессором
источник

CD

Constantine Drozdov in pro.cxx
Dmitry Sokolov
Завернуть в define :)
DECLARE_ENUM_BITOPS(E) etc.
Ты знаешь что-нибудь про этот хак с namespace detector?
источник

CD

Constantine Drozdov in pro.cxx
Я его как-то придумал, но не изучал
источник