不用那么麻烦。
因为vector有它自己的默认构造函数,所以第一个构造函数其实是不需要的。
另外一个,因为vector也有自己的operator=,所以直接赋值就行了。
struct item{ vector arr[10]; //这是一个每个成员都是一个vector的数组 item(){} item(const item& r) { for(int i = 0; i < 10; ++ i) { arr[i] = r.arr[i]; //这样??? } }};