2017-12-06 10 views
-1

vector<double>을 입력으로 사용하는 함수가있는 클래스가 있으며 vector<double>을 반환합니다.C++에서 변수에 대한 사용자 정의 형식 변환을 추가하는 방법은 무엇입니까?

Eigen::vectorXd을 입력 및 출력으로 사용하려면이 함수에 과부하를 걸려고합니다. 과부하가 필요한 많은 기능이 있습니다. 이 모든 함수에 대해 Eigen::vecrtorXd에서 vector<double>으로 타입 변환하는 유형 변환을 만드는 방법이 있습니까?

+0

코드를 '코드'로 표시하려면 버튼을 사용해야합니다. –

답변

0

당신이 무엇을 찾고 있는지에 따라, 당신은 기본 템플릿 기능이 달성 할 수있을 것, 즉

template <typename vec_t> 
vec_t do_something(const vec_t& input) 
{ 
    // Do things 
} 

이 같은 표준을 계산하는 일반적인 뭔가를하려는 경우에 잘 작동 곳 벡터의 치수는 중요하지 않습니다.

+0

이것이 내가 원하는 것입니다 만,'벡터 '와'Eigen :: VectorXd' 사이의 변환은 내장 된 변환이 아니기 때문에 어떻게 지정합니까? – bala

+0

Eigen이 어떻게 작동하는지 모르겠지만 Eigen에 반복적 인 균일 한 방법이 있다고 가정 할 때 ('template std :: vector convert (const eigen_vec_t &)'라는 수동 템플릿 변환 함수를 만들고 호출 할 수 있습니다. 요소를 통해. –