Compartilhar via


noncreatable

Define um objeto que não pode ser instanciado por si só.

Sintaxe

[noncreatable]

Comentários

O atributo C++ noncreatable tem a mesma funcionalidade que o atributo MIDL noncreatable e é passado automaticamente para o arquivo .IDL gerado pelo compilador.

Quando esse atributo é usado em um projeto que usa ATL, o comportamento do atributo é alterado. Além do comportamento acima, o atributo também injeta a macro OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO . Essa macro indica à ATL que o objeto não pode ser criado externamente.

Exemplo

// 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();
};

Requisitos

Contexto do atributo Valor
Aplicável ao class, struct
Repetível Não
Atributos obrigatórios coclass
Atributos inválidos Nenhum

Para obter mais informações sobre os contextos de atributo, confira Contextos de atributo.

Confira também

Atributos de IDL
Atributos de classe