コンパイラの警告 (レベル 1) C4581
更新 : 2007 年 11 月
エラー メッセージ
使用できない動作: 属性を処理するために、'"string1"' を 'string2' で置き換えました
このエラーは、Visual C++ 属性のパラメータ チェックを行う Visual C++ 2005 で行ったコンパイラ準拠作業の結果として生成されることがあります。
以前のバージョンでは、引用符で囲まれている属性値も囲まれていない属性値も受け入れられていました。値が列挙体の場合は、引用符で囲まないでください。
詳細については、「Visual C++ 2005 コンパイラの互換性に影響する変更点」を参照してください。
使用例
次の例では 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 {};