Результаты поиска по запросу "argument-dependent-lookup"
Можно ли взять адрес функции ADL?
Можно ли взять адрес функции, которая будет найдена через ADL? Например: template<class T> void (*get_swap())(T &, T &) { return & _________; // how do I take the address of T's swap() function? } int main() { typedef some_type T; get_swap<T>(); }
Почему этот вызов swap () неоднозначен?
Следующая программа
необходимо, чтобы избежать рекурсивного вызова обмена участником. Обмен участником отключает ADL.
емя некоторой практики C ++ я пытался выучить и принять идиому копирования-обмена, следуя этому подробному объяснению по этому вопросу:идиома копирования-обмена [https://stackoverflow.com/q/3279543/356440]. Но я нашел код, который никогда не ...
Это определенно проясняет ситуацию. Я бы, наверное, никогда не подошел бы к этому самому анализу стандарта. Я думаю, что понял, спасибо!
отрим простой пример: template <class T> struct tag { }; int main() { auto foo = [](auto x) -> decltype(bar(x)) { return {}; }; tag<int> bar(tag<int>); bar(tag<int>{}); // <- compiles OK foo(tag<int>{}); // 'bar' was not declared in this scope ...
@UncleBens: KitsuneYMG может ожидать, что будет управлять kitsune_ymb. Никто, кроме реализации, не может ожидать, чтобы контролировать стандартный. Другой ответ не добавляет объявлений в пространство имен std и не работает с вложенными кортежами и другими случаями.
я есть набор шаблонов / функций, которые позволяют мне печатать кортеж / пару, предполагая, что каждый тип в кортеже / паре имеетoperator<< определено для этого. К сожалению, из-за 17.4.3.1, это незаконно, чтобы добавить мойoperator<< перегрузки ...
, правильно?
ющий очень простой код не скомпилируется #include <vector> #include <string> namespace Foobar { struct Test { std::string f; std::uint16_t uuid; }; } bool operator==(const Foobar::Test& lhs, const Foobar::Test& rhs){ return lhs.f == rhs.f && ...