Re: [問題] C++ primer 的問題?
※ 引述《softwind (software everywhere)》之銘言:
: 練習 12.31, pair的成員都是 public
: 但是 pair<int, int> p2={0,42}; 不能編譯是因為?
: A: 因為pair有提供建構式 不能直接用 array 初始化變數.
呣,我的印象是可以編譯說,用 gcc 4 也成功
這應該在 C99 之後就有了吧?只是只能用在 POD 上
(還有這個語法不是 array initialization)
: 練習13.2 下列兩個編譯可以推斷出vector定義式的什麼資訊?
: vector<int> v1(42); //42個元素 每個都是0
: vector<int> v2=v1; //錯誤,
: A:這表示 template vector 不提供 copy constructor.(我的答案)
: 不是 int沒有提供 assignment 或是 copy.
另一個可能是 vector 的 copy ctor 是 explicit
: 練習 13.3 假設 class Point有一個public的 copy ctor, 下列有哪些地方應用?
: A:
: Point global;
: Point foo_bar( Point arg){ //arg: copy ctor, 有
: Point local=arg;// assignment, 無
^^^^^^^^^^^^^^^^ 這是 imply copy ctor
: Point *heap=new Point( global ); //global:copy 有, heap:assignment
: *heap=local;//assignment 無
: Point pa[4]={local, *heap}; //初始化pa[4], 前兩個 copy, 後兩個default?
: return *heap;//copy ctor 有
: }
: 練習 13.5 下列class 哪些 可能要有 copy constructor,
: 1. Point3w 內含有4個 浮點數成員.
: A: object 內部的 member variable 應該不用
: 2. Matrix 含有一個array 在建構式中動態配置, 解構式中刪除
: A: 有資源配置, 需要copy ctor
: 3. Playroll 每個物件都有一個唯一的識別碼
: A: 不確定, 不過 我想唯一性 應該算是一種資源, so 需要?
需要,不訂製的話 id 會被預設行為複寫
: 4. Word 內有一個string和一個vector 後者含有行列對(line-column pair)
: A: ??? 不懂"行列對" 是指哪個東西
我也看不懂 XD
--
自High筆記(半荒廢)
http://legnaleurc.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.146.194.91
→
06/08 00:00, , 1F
06/08 00:00, 1F
→
06/08 00:01, , 2F
06/08 00:01, 2F
推
06/08 00:56, , 3F
06/08 00:56, 3F
→
06/08 00:56, , 4F
06/08 00:56, 4F
→
06/08 01:22, , 5F
06/08 01:22, 5F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章