noncreatable
定义一个自身不能实例化的对象。
语法
[noncreatable]
备注
不可创建 C++ 属性的功能与不可创建的 MIDL 属性相同,并且会自动传递给编译器生成的 .IDL 文件。
如果在使用 ATL 的项目中使用此特性,该特性的行为会更改。 除了上述行为,该属性还注入 OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO 宏。 此宏指示 ATL 无法外部创建对象。
示例
// cpp_attr_ref_noncreatable.cpp
// compile with: /LD
#include <unknwn.h>
[module(name="MyLib")];
[object, uuid("11111111-1111-1111-1111-111111111111")]
__interface A
{
};
[coclass, uuid("11111111-1111-1111-1111-111111111112"), noncreatable]
class CMyClass : public A
{
HRESULT xx();
};
要求
特性上下文 | 值 |
---|---|
适用于 | %> |
可重复 | 否 |
必需的特性 | coclass |
无效的特性 | 无 |
有关特性上下文的详细信息,请参见 特性上下文。