2013-02-20 3 views
1

_variant_t 유형의 값을 가져 오는 방법을 알고 싶습니다._variant_t 값을 가져 오는 방법은 무엇입니까?

은 이미 방법을 Excel 파일 (.XLS)에서는 GetItems를 사용하여 값(), 예컨대 :

_variant_t var = pRs->Fields->GetItem(i)->GetValue(); 

을 알고, 내가 행의 전체 데이터 방법을 찾을 수 없습니다.

+0

내가 여기에 요청을 받고 있는지 아무 생각 없어했습니다. 'variant_t'는 명확하지만'GetItems()'는 어디서 오는 것입니까? Excel과이 작업은 어떤 관계가 있습니까? – MSalters

+0

귀하의 질문은 분석하기가 어렵습니다. "방법 값"? "행의 전체 데이터"방법? 'GetItems()'와'GetItem()'? –

+0

위의 prop-fetches와 메소드 실행의 긴 체인 중 하나라도 예외를 throw하지 않는다고 가정 할 때, 특정 "값"을 염두에 두어야 했습니까? 왜냐하면 방금 가져온 값 (* 반환 된'variant_t' 및 아마도 그 정보를 읽으면 문제를 해결하는 데 도움이 될 수 있습니다.) – WhozCraig

답변

2

변형 유형에서 데이터를 추출하는 데 사용할 수있는 추출기 모음이 있습니다. 변종이 나타내는 유형으로 변환하십시오. 내부 유형을 가져 오려면 'vt'멤버를 확인하십시오.

여기에 기사는 MSDN입니다.

샘플 코드 :

#include <Windows.h> 
#include <comutil.h> 
#include <cassert> 

#pragma comment(lib, "comsuppw.lib") 

int main() 
{ 
    _variant_t v(10.0); 
    assert(v.vt == VT_R8); // inner type is double 

    double value = static_cast<double>(v); // 10.0 

    return 0; 
} 
관련 문제