|
안녕하세요
TVariant는 API의 VARIANT를 랩핑한 클래스 입니다.
VARIANT사용의 번거로움을 없애준 클래스이죠...
TVariant 맴버함수 중에 많은 타입캐스팅 연산자들이 있으니까 그걸 참조하셔서 쓰시면되고요..
아래와 같은 경우는
xxx.get_item(AnsiString("jyh"));
또는
xxx->get_item(AnsiString("jyh"));
이렇게 하시면 될것입니다..
그럼 즐거운 하루 되세여..
완전 초보 님이 쓰신 글 :
: 에구~ 답변이 안올라와서요.
: 혹시 제가 질문을 너무 간단히 한것 같아 다시 올립니다.
:
: ocx를 하나썼고, 사용할 함수 선언은 다음과 같습니다.
:
: LPDISPATCH __fastcall get_Item(TVariantInParam Index/*[in]*/);
:
: 이 함수의 실제 사용을 다음과 같이 했습니다.
:
: .get_Item((TVariant*)("jyh"));
:
: 그런데 에러 메시지가 "program files\borland\CBuilder5\include\vcl디렉토리 안에있는
: "utilcls.h"란 헤더화일에서 다음과 같은 부분에서 나타났습니다.
:
: /* Assignment operators */
: TVariantT& operator =(const TBaseVariantT<T>& rhs)
: {
: if (&rhs != this)
: {
: ::VariantClear(this);
: ::VariantCopy(this, &(const_cast<TVariantT&>(rhs))); ==>에러발생
: }
: return *this;
: }
:
: 에러메시지는 다음과 같습니다.
: "Cannot cast from 'const TBaseVariantT<tagVARIANT>' to 'TVariant&'"
:
:
: 고수님들, 꼭 답변좀 부탁드립니다.
:
|