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.