Megosztás a következőn keresztül:


C3771 fordítóhiba

"identifier" : az ismerős deklarációja nem található a legközelebbi névtér hatókörében

Megjegyzések

A megadott sablonazonosító osztálysablon-deklarációja nem található az aktuális névtérben.

A hiba kijavítása

  • Győződjön meg arról, hogy az osztálysablon deklarációja az aktuális névtérben van definiálva, vagy hogy a sablonazonosító teljesen kvalifikált név.

Example

Az alábbi példakód egy osztálysablont és függvényt deklarál a névtérben NA, de megkísérli deklarálni egy barátfüggvénysablont a névtérben NB.

// 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.
    };
}

Lásd még

Sablonok