Suchergebnisse für Anfrage "name-lookup"

6 die antwort

Erroneous Private Base Class nicht erreichbar?

Kompilieren dieses Codes mit g ++ 4.2.1: struct S { }; template<typename T> struct ST { }; template<typename BaseType> class ref_count : private BaseType { }; template<typename RefCountType> class rep_base : public RefCountType { }; class ...

2 die antwort

Welche Regel erlaubt "this->" den Zugriff auf Mitglieder abhängiger Basisklassen?

Wie wir wissen, ist der Code unten schlecht geformt, weil das Mitgliedx ist in einer abhängigen Basisklasse. Ändern jedochx zuthis->x in der angezeigten Zeile würde den Fehler beheben. template <typename T> struct B { int x; }; template ...

4 die antwort

Multiple Inheritance Template Class

class messageA { }; class messageB { }; template<class T> class queue { public: virtual ~queue() {} void submit(T& x) {} }; class A : public queue<messageA>, public queue<messageB> { }; int main() { A aa; ...

TOP-Veröffentlichungen

4 die antwort

Warum ist dieser Aufruf von swap () nicht eindeutig?

Das folgende Programm #include <algorithm> #include <utility> #include <memory> namespace my_namespace { template<class T> void swap(T& a, T& b) { T tmp = std::move(a); a = std::move(b); b = std::move(tmp); } template<class T, class Alloc ...

2 die antwort

Name versteckt durch Deklaration

#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); }Und das ist das ...

6 die antwort

Rückgabetyp des bedingten Operators und zweiphasige Suche

Betrachten Sie das folgende Snippet: 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 << ...