Ostrzeżenie kompilatora (poziom 3) C4686

"Typ zdefiniowany przez użytkownika" : możliwa zmiana zachowania, zmiana konwencji wywołania zwrotnego UDT

Uwagi

Specjalizacja szablonu klasy nie została zdefiniowana, zanim została użyta w typie zwrotnym. Wszystkie wystąpienia klasy rozpoznają C4686; Deklarowanie wystąpienia lub uzyskiwanie dostępu do elementu członkowskiego (na przykład C<int>::some_member) to również opcje.

To ostrzeżenie jest domyślnie wyłączone. Aby uzyskać więcej informacji, zobacz Ostrzeżenia kompilatora, które są domyślnie wyłączone.

Przykład

Spróbuj wykonać następujące czynności:

// C4686.cpp
// compile with: /W3
#pragma warning (default : 4686)
template <class T>
class C;

template <class T>
C<T> f(T);

template <class T>
class C {};

int main() {
   f(1);   // C4686
}

template <class T>
C<T> f(T) {
   return C<int>();
}