作者becoder (程式學習者)
看板C_and_CPP
標題[問題] copy constructor
時間Wed Nov 29 07:25:27 2017
開發平台(Platform): (Ex: Win10, Linux, ...)
WIN10
編譯器(Ex: GCC, clang, VC++...)+目標環境(跟開發平台不同的話需列出)
DEV C++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
NONE
問題(Question):
http://joule.bu.edu/~hazen/progr/cppcen.html#l19
範例19中,我將程式碼複製到DEV C++上希望能跑,不過會當掉
最後的Bob會出問題
希望能說明怎麼回事
(我是C的使用者在學習C++,所以C++的概念較為薄弱)
餵入的資料(Input):
無
預期的正確結果(Expected Output):
不會當掉
錯誤結果(Wrong Output):
會當掉
程式碼(Code):(請善用置底文網頁, 記得排版)
http://joule.bu.edu/~hazen/progr/cppcen.html#l19
補充說明(Supplement):
希望可以說明觀念
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.163.197.91
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1511911530.A.BB7.html
1F:推 s4300026: 你的程式碼 11/29 07:26
2F:→ loveflames: copy ctor少一個const,就這樣 11/29 08:03
4F:→ ilikekotomi: 文章是我隨便找的 但建議先看一下釐清觀念 11/29 11:07
5F:推 peterwu4: 你在各個ctor、dtor刷刷訊息就明白了 11/29 12:48
6F:推 peterwu4: 最後那個呼叫的不是copy ctor 11/29 12:50
7F:→ Caesar08: 怎麼沒有copy assignment operator? 11/29 14:18
8F:→ loveflames: 現在提rule of 3/5太早 11/29 14:38
10F:→ ilikekotomi: 這個網站還不錯 感覺你應該還不會用IDE debug 11/29 15:07
11F:→ ilikekotomi: 不訪先將code貼進去跑跑看 希望你可以發現問題 11/29 15:08
12F:推 peterwu4: 樓上的東西真的不錯~ 程式少了一個copy assign 11/29 15:35
13F:→ peterwu4: person &operator=(const person &s) { 11/29 15:36
14F:→ peterwu4: strcpy(name, s.name); age = s.age; return *this; } 11/29 15:37
15F:推 eye5002003: 為何一個建構子有new char而另一個沒有?都要new啊 11/29 21:25