IModelObject ::SetConcept, méthode (dbgmodel.h)
La méthode SetConcept place un concept spécifié sur l’objet instance spécifié par ce pointeur. Si un modèle parent attaché à l’objet instance spécifié par cela prend également en charge le concept, l’implémentation dans le instance remplacera celle du modèle parent.
Pour connaître l’ensemble des concepts (interfaces) pris en charge par le modèle de données, consultez Concepts du modèle de données C++ du débogueur.
Pour plus d’informations sur l’interface IKeyStore , consultez interface IKeyStore.
Syntaxe
HRESULT SetConcept(
REFIID conceptId,
IUnknown *conceptInterface,
IKeyStore *conceptMetadata
);
Paramètres
conceptId
Identificateur unique du concept affecté. Il s’agit également de l’IID de l’interface principale du concept.
conceptInterface
Interface de concept affectée (définie par conceptId).
conceptMetadata
Métadonnées facultatives à associer à ce concept.
Valeur retournée
Cette méthode retourne HRESULT qui indique la réussite ou l’échec.
Remarques
Exemple de code
ComPtr<IModelObject> spObject; /* get an object: say a new one from CreateSyntheticObject */
// Implement IStringDisplayableConcept for the object. Return a static "Hello World" string.
class MyStringConversion :
public Microsoft::WRL::RuntimeClass<
Microsoft::WRL::RuntimeClassFlags<Microsoft::WRL::RuntimeClassType::ClassicCom>,
IStringDisplayableConcept
>
{
public:
IFACEMETHOD(ToDisplayString)(_In_ IModelObject * /*pContextObject*/,
_In_opt_ IKeyStore * /*pMetadata*/,
_Out_ BSTR *pDisplayString)
{
*pDisplayString = SysAllocString(L"Hello World");
return *pDisplayString == nullptr ? E_OUTOFMEMORY : S_OK;
}
};
// Add the implementation as a concept
ComPtr<MyStringConversion> spStringConverter = Microsoft::WRL::Make<MyStringConversion>();
if (spStringConverter != nullptr)
{
if (SUCCEEDED(spObject->SetConcept(__uuidof(IStringDisplayableConcept),
static_cast<IStringDisplayableConcept *>
(spStringConverter.Get()), nullptr)))
{
// The new object can be converted to a string!
}
}
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | dbgmodel.h |