2017-10-12 1 views
-2

저는 C++ 코드를 Matlab로 변환하고 있습니다. 그러나, 나는지도를 matlab 구문으로 변환하는 데 어려움을 겪고있다. C++ 맵 컨테이너에서 matlab에

지도를 사용하는 C의 ++ 지침

는 다음과 같습니다

using kp_idx_t = size_t; 
using img_idx_t = size_t; 

std::map<kp_idx_t, std::map<img_idx_t, kp_idx_t>> kp_matches; 

kp_idx_t& kp_match_idx(size_t kp_idx, size_t img_idx) { return kp_matches[kp_idx][img_idx]; }; 
bool kp_match_exist(size_t kp_idx, size_t img_idx) { return kp_matches[kp_idx].count(img_idx) > 0; }; 

어떻게 MATLAB에로 변환하는?

+0

https://www.mathworks.com/help/matlab/ref/containers.map-class.html –

답변

0

Matlab의 std::map과 직접적으로 일치하는 것은 없습니다. 그래서 내 대답은 "Matlab로 변환하는 방법?" 당신이하려는 일에 달렸습니다.

나는 정확하게 코드를 따르거나 당신이지도를 사용하는 것의 어떤 생각을 가지고 있지만이 같은 일을하는 경우 것은 C++하지 않습니다

std::map<char,int> first; 
    first['a']=10; 
    first['b']=30; 
    first['c']=50; 

당신은 어쩌면 matlab에 구조를 사용할 수 있습니다 :

first.a = 10; 
first.b = 20; 
first.c = 30; 

그러면 Matlab의 동적 필드 이름과 비슷한 키를 사용할 수 있습니다. 반환

myKey = 'a'; 
first.(myKey) 

10