Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
"uživatelem definovaný typ" : možné změny chování, změna v konvenci volání UDT return
Poznámky
Specializace šablony třídy nebyla definována dříve, než byla použita v návratovém typu. Cokoli, co vytvoří instanci třídy, vyřeší C4686; Deklarace instance nebo přístupu k členu (například C<int>::some_member) jsou také možnosti.
Toto upozornění je ve výchozím nastavení vypnuté. Další informace najdete v tématu Upozornění kompilátoru, která jsou ve výchozím nastavení vypnutá.
Příklad
Zkuste místo toho použít následující:
// 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>();
}