Resultados da pesquisa a pedido "argument-dependent-lookup"

0 a resposta

Cxx-prettyprint (para contêineres padrão) define seus operadores de saída dentro do namespace std - isso é uma violação padrão?

Eu tenho usado com sucessocxx-prettyprint: Uma impressora bonita de contêiner C ++ [http://louisdx.github.io/cxx-prettyprint/]para registrar valores de contêiner. (Veja tambémRecipientes C ++ STL com impressão ...

1 a resposta

C ++ 11 style SFINAE e visibilidade de função na instanciação de template

Não tenho certeza se isso tem algo a ver com sfinae, ou apenas algo que é relevante para qualquer função modelada. Eu estou tentando usar sfinae para ativar ...

1 a resposta

O ADL não procura funções membro estáticas?

Esta é uma pergunta de acompanhamentoA pesquisa dependente de argumentos só procura namespaces ou classes também? , Em que @David Rodríguez disse "ADL v...

1 a resposta

É possível obter o endereço de uma função ADL?

É possível obter o endereço de uma função que seria encontrada através da ADL?Por exemplo:

1 a resposta

A refatoração de um operador sobrecarregado em uma função que não é membro pode quebrar algum código?

Considere um modelo de classe herdado com operadores de adição sobrecarregados+= e+ template<class T> class X { public: X() = default; /* implicict */ X(T v): val(v) {} X<T>& operator+=(X<T> const& rhs) { val += rhs.val; return *this; } X<T> ...

1 a resposta

Ocultar o nome usando a declaração

#include <iostream> struct H { void swap(H &rhs); }; void swap(H &, H &) { std::cout << "swap(H &t1, H &t2)" << std::endl; } void H::swap(H &rhs) { using std::swap; swap(*this, rhs); } int main(void) { H a; H b; a.swap(b); }E este é ...

1 a resposta

O operador de comparação para std :: vector <T> falha ao encontrar o operador de comparação para T

O código muito simples a seguir não será compilado #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 == ...

1 a resposta

Baseado em intervalo para loops e ADL

oRascunho de trabalho padrão C ++ 0x [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3242.pdf]afirma (seção 6.5.4) o seguinte sobre as chamadas begin () e end () implícitas em um loop for baseado em intervalo: 'begin' e 'end' são ...

2 a resposta

A pesquisa dependente de argumentos só procura namespaces ou classes também?

2 a resposta

Quando é aplicada a ADL?

Existem 3 exemplos: EU. typedef int foo; namespace B { struct S { operator int(){ return 24; } }; int foo(B::S s){ return 0; } } int main() { int t=foo(B::S()); //24, ADL does not apply }II namespace B { struct S { operator int(){ return 24; } ...