typedef struct X_
{
    int ix ;
    string s ;
} X;

void f(X *ptr,unsigned int num)
{
    for(unsigned int idx=0;idx<num;idx++){
        printf("(%d)\n",(ptr+idx)->ix) ;
    }
}

int main()
{
    vector<X> x{ {1,"1"},{2,"2"},{3,"3"},{3,"3"},{4,"4"},{5,"5"},{6,"6"},{7,"7"}, } ;
    f(&x[0], x.size());
}

**千萬別用 x.begin() , 不是每個 compile 都是 x.begin() == &x[0]

http://www.parashift.com/c++-faq-lite/vector-is-contiguous.html

創作者介紹
創作者 hedgezzz 的頭像
hedgezzz

hedgezzz的部落格

hedgezzz 發表在 痞客邦 留言(0) 人氣()