Compiler Warning (level 3) C4686
'jenis yang ditentukan pengguna' : kemungkinan perubahan perilaku, perubahan konvensi panggilan pengembalian UDT
Keterangan
Spesialisasi templat kelas tidak ditentukan sebelum digunakan dalam jenis pengembalian. Apa pun yang membuat instans kelas menyelesaikan C4686; mendeklarasikan instans atau mengakses anggota (misalnya, C<int>::some_member
) juga merupakan opsi.
Peringatan ini nonaktif secara default. Untuk informasi selengkapnya, lihat Peringatan pengkompilasi yang nonaktif secara default.
Contoh
Coba yang berikut ini sebagai gantinya:
// 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>();
}