IModelObject::SetKey 메서드(dbgmodel.h)
SetKey 메서드는 개체에 키를 만들고 메타데이터를 생성된 키와 잠재적으로 연결하기 위해 클라이언트가 로 설정하는 메서드입니다. 지정된 개체에 지정된 이름의 키가 이미 있는 경우 두 동작 중 하나가 발생합니다. 키가 지정된 instance 있으면 원래 키가 없는 것처럼 해당 키의 값이 바뀝니다. 반면에 키가 지정된 instance 부모 데이터 모델 체인에 있는 경우 지정된 이름의 새 키가 지정된 instance 만들어집니다. 이렇게 하면 사실상 개체에 동일한 이름의 두 개의 키가 있습니다(기본 클래스와 같은 이름의 멤버를 숨기게 하는 파생 클래스와 유사).
구문
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 |