IModelObject::SetKey 메서드(dbgmodel.h)
SetKey 메서드는 개체에 키를 만들기 위해 클라이언트에서 설정 하는 메서드 (및 잠재적으로 만든 된 키와 메타 데이터를 연결). 지정된 개체에 지정된 이름의 키가 이미 있는 경우 두 동작 중 하나가 발생합니다. 키가 지정된 인스턴스에 있으면 원래 키가 없는 것처럼 해당 키의 값이 대체됩니다. 반면에 키가 지정된 인스턴스의 부모 데이터 모델 체인에 있는 경우 지정된 이름의 새 키가 지정된 인스턴스에 만들어집니다. 이로 인해 개체에 동일한 이름의 키가 두 개 있습니다(기본 클래스와 같은 이름의 멤버를 숨기도록 하는 파생 클래스와 유사).
통사론
HRESULT SetKey(
PCWSTR key,
IModelObject *object,
IKeyStore *metadata
);
매개 변수
key
값을 설정할 키의 이름입니다.
object
키 값은 이 인수에 포함된 개체로 설정됩니다.
metadata
새로 설정된 키와 연결할 선택적 메타데이터입니다.
반환 값
이 메서드는 성공 또는 실패를 나타내는 HRESULT를 반환합니다.
발언
코드 샘플
ComPtr<IDataModelManager> spManager; /* get the data model manager */
// Create a new object with a property called "Test" with a value of 42.
ComPtr<IModelObject> spNewObject;
if (SUCCEEDED(spManager->CreateSyntheticObject(nullptr, &spNewObject)))
{
VARIANT vtVal;
vtVal.vt = VT_I4;
vtVal.lVal = 42;
ComPtr<IModelObject> sp42;
if (SUCCEEDED(spManager->CreateIntrinsicObject(ObjectIntrinsic, &vtVal, &sp42)))
{
if (SUCCEEDED(spNewObject->SetKey(L"Test", sp42.Get(), nullptr)))
{
// We have placed a static "42" on the new object under the key "Test"
}
}
}
요구 사항
요구 | 값 |
---|---|
헤더 | dbgmodel.h |