次の方法で共有


コンパイラ エラー C3373

属性 'attribute' はコクラス以外で引数を必要としません

2 つ以上の C++ コンストラクトに適用できる属性もありますが、属性の引数の使用は、一部のコンストラクトに限られる場合があります。

次の例では C3373 が生成されます。

// C3373.cpp
#include <windows.h>

[module(name="MyModule")];

[ object, uuid(373a1a4c-469b-11d3-a6b0-00c04f79ae8f) ]
__interface IMyIface
{
   // arguments to source and restricted are not allowed when
   // these attributes are applied to an interface
   [source(IMyIface)] HRESULT f1();
   [restricted(IMyIface)] HRESULT f2(); // C3373
};

[ coclass, uuid(373a1a4d-469b-11d3-a6b0-00c04f79ae8f) ]
class CMyClass : public IMyIface {
};

int main() {
}