Partage via


noncreatable

Définit un objet qui ne peut pas être instancié par lui-même.

Syntaxe

[noncreatable]

Notes

L’attribut C++ noncreatable a la même fonctionnalité que l’attribut MIDL noncreatable et est transmis automatiquement à l’attribut généré. Fichier IDL par le compilateur.

Lorsque cet attribut est utilisé dans un projet qui utilise ATL, le comportement de l’attribut change. En plus du comportement ci-dessus, l’attribut injecte également la macro OBJECT_ENTRY_NON_CREATEABLE_EX_AUTO . Cette macro indique à ATL que l’objet ne peut pas être créé en externe.

Exemple

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

Spécifications

Contexte d’attribut Value
S’applique à class, struct
Renouvelable Non
Attributs requis coclass
Attributs non valides Aucun

Pour plus d'informations sur les contextes d'attribut, consultez Contextes d'attribut.

Voir aussi

Attributs IDL
Attributs de classe