Bagikan melalui


Compiler Warning (level 2) C4396

"name" : penentu sebaris tidak dapat digunakan saat deklarasi teman mengacu pada spesialisasi templat fungsi

Spesialisasi templat fungsi tidak dapat menentukan salah satu penentu sebaris . Kompilator mengeluarkan peringatan C4396 dan mengabaikan penentu sebaris.

Untuk memperbaiki kesalahan ini

  • inlineHapus , , __inlineatau __forceinline penentu dari deklarasi fungsi teman.

Contoh

Contoh kode berikut menunjukkan deklarasi fungsi teman yang tidak valid dengan penentu inline .

// C4396.cpp
// compile with: /W2 /c

class X;
template<class T> void Func(T t, int i);

class X {
    friend inline void Func<char>(char t, int i);  //C4396
// try the following line instead
//    friend void Func<char>(char t, int i);
    int i;
};