Delen via


Compilerfout C3771

"id" : vrienddeclaratie kan niet worden gevonden in het dichtstbijzijnde naamruimtebereik

Opmerkingen

De templateklasse-verklaring voor de aangegeven identifier kan niet worden gevonden binnen de huidige namespace.

Deze fout corrigeren

  • Zorg ervoor dat de declaratie van de klassesjabloon voor de sjabloon-id is gedefinieerd in de huidige naamruimte of dat de sjabloon-id een volledig gekwalificeerde naam is.

Example

Het volgende codevoorbeeld declareert een klassesjabloon en functie in naamruimte NA, maar probeert een vriend-functiesjabloon in naamruimte NBte declareren.

// C3771.cpp
// compile with: /c

namespace NA {
template<class T> class A {
    void aFunction(T t) {}
    };
}
// using namespace NA;
namespace NB {
    class X {
        template<class T> friend void A<T>::aFunction(T); // C3771
// try the following line instead
//      template<class T> friend void NA::A<T>::aFunction(T);
// or try "using namespace NA;" instead.
    };
}

Zie ook

Sjablonen