Aviso do compilador (nível 1) C4581

Comportamento preterido: '"string1"' substituído por 'string2' para processar atributo

Esse erro pode ser gerado como resultado do trabalho de conformidade do compilador que foi feito para o Visual Studio 2005: verificação de parâmetros para atributos do Visual C++.

Em versões anteriores, os valores de atributo eram aceitos se estavam entre aspas ou não. Se o valor for uma enumeração, ele não deverá estar entre aspas.

Exemplo

A amostra a seguir gera C4581.

// C4581.cpp
// compile with: /c /W1
#include "unknwn.h"
[object, uuid("00000000-0000-0000-0000-000000000001")]
__interface IMyI : IUnknown {};

[coclass, uuid(12345678-1111-2222-3333-123456789012), threading("free")]   // C4581
// try the following line instead
// [coclass, uuid(12345678-1111-2222-3333-123456789012), threading(free)]
class CSample : public IMyI {};