Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
"nome" : o especificador embutido não pode ser usado quando uma declaração de amigo se refere a uma especialização de um modelo de função
Observações
Uma especialização de um modelo de função não pode especificar nenhum dos especificadores embutidos . O compilador emite o aviso C4396 e ignora o especificador embutido.
Para corrigir este erro
- Remova o
inline,__inline, ou__forceinlineespecificador da declaração de função amigo.
Example
O exemplo de código seguinte mostra uma declaração inválida de função friend com um especificador 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;
};