2011-02-06 41 views
0

的結構,我試圖從結構數據分配到一個std ::向量分配標準:矢量從包含數組

下面是代碼

struct myArray 
{ 
    double * data; 
    size_t len; 
}; 


typedef std::vector<double> DoubleVect; 


DoubleVect myvect; 
MyArray myarr; 

// code to initialize alloc and populate the MyArray variable 
// .... 


myvect.assign(&myarr.data, &myarr.data + myarr.len); // compiler barfs here ... 

任何想法,爲什麼?我該如何解決這個問題?

回答

4

是的。擺脫地址運營商,它會沒事的。以數據成員data的地址給出double**類型的表達式。這當然不是你想要的。

+0

Doh!有時它需要的只是第二套眼睛(或者是休息一下!) – skyeagle 2011-02-06 21:16:50