Resultados de la búsqueda a petición "dependent-name"

1 la respuesta

¿Cuál es la regla que permite a 'this->' acceder a miembros de clases base dependientes?

Como sabemos, el siguiente código está mal formado porque el miembrox está en una clase base dependiente. Sin embargo, cambiandox athis->x en la línea indicada corregiría el error. template <typename T> struct B { int x; }; template <typename T> ...

1 la respuesta

El operador de comparación para std :: vector <T> no puede encontrar el operador de comparación para T

El siguiente código muy simple no compilará #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 && ...

2 la respuesta

Visual C ++ Compiler permite el nombre de dependiente como un tipo sin "typename"?

Hoy uno de mis amigos me dijo que el siguiente código se compila bien en su Visual Studio 2008: #include <vector> struct A { static int const const_iterator = 100; }; int i; template <typename T> void PrintAll(const T & obj) { T::const_iterator ...

2 la respuesta

static_assert depende del parámetro de plantilla sin tipo (comportamiento diferente en gcc y clang)

template <int answer> struct Hitchhiker { static_assert(sizeof(answer) != sizeof(answer), "Invalid answer"); }; template <> struct Hitchhiker<42> {};Al intentar deshabilitar la creación de instancias de plantilla general constatic_assert Descubrí ...

3 la respuesta

Tipo de retorno del operador condicional y búsqueda en dos fases

Considere el siguiente fragmento: struct Base { }; struct Derived : Base { }; void f(Base &) { std::cout << "f(Base&)\n"; } template <class T = int> void g() { Derived d; f(T{} ? d : d); // 1 } void f(Derived &) { std::cout << "f(Derived&)\n"; } ...

6 la respuesta

¿Dónde y por qué tengo que poner las palabras clave "plantilla" y "nombre de tipo"?

lantillas @In, dónde y por qué tengo que ponertypename ytemplate en nombres dependientes? ¿Qué son exactamente los nombres dependientes de todos modos? Tengo el siguiente código template <typename T, typename Tail> // Tail will be a UnionNode ...