發信人how.bbs@bbs.csie.ntnu.edu.tw (),
看板Programming
標 題[C++]有關string class的pointer要如何initialize
發信站白色情迷 (Wed Jul 13 11:54:20 2011)
轉信站ptt!news.ntu!mars.scc.ntnu!snowBBS
請教大家
我在讀C++ Primer 第3版的411頁(英文版)時
發現了一行指令是有關string class的pointer要initialize
寫法是:
string *pstr_type2(pstr_type); //pstr_type為另一個string class的pointer
令我不太了解的地方是pstr_type2本身為一pointer,我個人的看法是應該寫為
string *pstr_type2 = pstr_type
才對,但是上述兩種寫法在Dev C++上執行,結果都正確
第一種寫法似乎是呼叫string class的pointer的copy constructor去initialize
但是string class的pointer可以這樣做嗎? why?
--
╭╢ 師大資訊。白色情迷 ╟┬─ ⊙ Origin : bbs.csie.ntnu.edu.tw
├╨→ 140.122.185.139←╜╰─ ☆ From : alumni--csie.cs.nctu.edu.tw
推 Zephyr750:()初始化,=定義,動作不同 114.33.224.25 07/17 00:27
→ Zephyr750:=運算子會先宣告另一個string再將值複製 114.33.224.25 07/17 00:27
→ Zephyr750:之後再string銷毀,另一種不同 114.33.224.25 07/17 00:28