[問題] std::vector assign
#include <vector>
void assign( size_type num, const TYPE& val );
void assign( input_iterator start, input_iterator end );
第一種
v.assign( 10, 42 );
會出現 42 42 42 42 42 42 42 42 42 42 十個
第二種
std::vector<int> vector;
int array[ ] = { 1, 2, 3 };
vector.assign( array, array + 3 );
for(int i=0;i<3;i++){
printf("%d\n",vector[i]);
}
printf("%u %u\n",array,array+3);
會出現 1 2 3
問題是,
array=3216551792 什麼不會被當成 3216551792 個 array+3 東東呢?
打到這邊想到了,自問自答
printf("%s\n",typeid(array).name());
A3_i
他"可以"看typeid是什麼來決定怎麼做
不過他不是這麼做的....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.102.254
推
10/20 12:58, , 1F
10/20 12:58, 1F
→
10/20 13:00, , 2F
10/20 13:00, 2F
推
10/20 13:22, , 3F
10/20 13:22, 3F
→
10/20 13:22, , 4F
10/20 13:22, 4F
→
10/20 13:23, , 5F
10/20 13:23, 5F
→
10/20 13:23, , 6F
10/20 13:23, 6F
※ 編輯: jlovet 來自: 140.123.102.254 (10/20 13:58)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章