[問題] vector的push_back?
請問一下vector的push_back一些問題,例如我自定一個class A,然後再
建立一個pool,用vector存,如下所示:
class A
{
public:
A() {}
~A() {}
private:
int m_test;
}
然後main裡:
vector<A> pool_a;
A a1;
pool_a.push_back(a);
然後我做了copy constructor和operator=:
public:
A(const A& rhs) { ....; }
A& operator= (const A& rhs) { ...; }
我想問的是,push_back會到copy constructor裡,但不會到operator=,
如果我把operator=拿到private,complier又會跟我說operator=無法存取
private成員,請問是為什麼呢?
--
→
11/02 21:11,
11/02 21:11
推
11/02 21:12,
11/02 21:12
→
11/02 21:12,
11/02 21:12
推
11/02 21:13,
11/02 21:13
→
11/02 21:12,
11/02 21:12
→
11/02 21:13,
11/02 21:13
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.64.227.34
→
05/17 17:28, , 1F
05/17 17:28, 1F
→
05/17 17:31, , 2F
05/17 17:31, 2F
→
05/17 17:33, , 3F
05/17 17:33, 3F
→
05/17 17:33, , 4F
05/17 17:33, 4F
→
05/17 17:33, , 5F
05/17 17:33, 5F
→
05/17 17:34, , 6F
05/17 17:34, 6F
→
05/17 17:35, , 7F
05/17 17:35, 7F
→
05/17 17:37, , 8F
05/17 17:37, 8F
→
05/17 17:37, , 9F
05/17 17:37, 9F
→
05/17 17:56, , 10F
05/17 17:56, 10F
→
05/17 20:34, , 11F
05/17 20:34, 11F
→
05/17 20:35, , 12F
05/17 20:35, 12F
→
05/18 07:53, , 13F
05/18 07:53, 13F
→
05/18 08:55, , 14F
05/18 08:55, 14F
→
05/18 09:06, , 15F
05/18 09:06, 15F
→
05/18 09:07, , 16F
05/18 09:07, 16F
→
05/18 09:22, , 17F
05/18 09:22, 17F
→
05/18 14:10, , 18F
05/18 14:10, 18F
→
05/18 15:00, , 19F
05/18 15:00, 19F
→
05/18 15:00, , 20F
05/18 15:00, 20F