Re: [問題]C++ Destuctor跟Delete

看板C_and_CPP作者 (Train Station)時間7年前 (2017/04/28 18:39), 7年前編輯推噓2(2011)
留言13則, 6人參與, 最新討論串2/2 (看更多)
工作平台 : Win10 編譯器 : CodeBlock 附上程式碼縮網址 http://goo.gl/4LtrL7 裡面有三個檔案分別是 BigNumber.h main.cpp Prime.cpp 目前網址中的 destructor 是不會 delete data的 可以順利地跑出後面兩個程式 不過問題是跑Prime.cpp的時候 如果執行時間過久就會bad_allocate 約使用到 1.xG ..... 然而修改 destructor ,讓他會delete data 我的main.cpp 在 constructor 執行後 他應該有的數值就會跑掉 如圖所示 http://imgur.com/Ti97MK2.jpg
Plaintext 的那行是在main裡面呼叫印出來的 前一行是在constructor 的最後一行cout的 http://imgur.com/Kjp9RBq.jpg
在這三行之間數值就直接跑掉... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 180.176.219.108 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1493375953.A.A67.html ※ 編輯: yilanP (180.176.219.108), 04/28/2017 18:41:03

04/28 22:05, , 1F
粗淺地看下,感覺是因為你賦值跟複製沒弄好
04/28 22:05, 1F

04/28 22:15, , 2F
剛剛google了一下賦值跟拷貝…我都沒寫也完全不知道
04/28 22:15, 2F

04/28 22:15, , 3F
感謝樓上
04/28 22:15, 3F

04/28 22:38, , 4F
Ans寫法不對
04/28 22:38, 4F

04/28 22:40, , 5F
想問樓上正確要怎麼寫?或是google關鍵字 中英皆可
04/28 22:40, 5F

04/29 10:45, , 6F
.h 裡面怎麼一起放了定義
04/29 10:45, 6F

04/29 10:52, , 7F
26行 執行 Encryption 的時候返回會 啟動複製函式
04/29 10:52, 7F

04/29 11:03, , 8F
更正複製建構子
04/29 11:03, 8F

04/29 11:03, , 9F
補上copy contrcutor跟asssignment operator應該就會正常
04/29 11:03, 9F

04/29 12:26, , 10F
基本觀念(關鍵字): Rule of Three / Rule of Five
04/29 12:26, 10F

04/29 12:43, , 11F
感謝樓上各位的回答,多了copy constructor跟assign opera
04/29 12:43, 11F

04/29 12:43, , 12F
tor後就正常了
04/29 12:43, 12F

04/29 12:44, , 13F
lph66的回答我也會去看的謝謝了
04/29 12:44, 13F
文章代碼(AID): #1P0nlHfd (C_and_CPP)
文章代碼(AID): #1P0nlHfd (C_and_CPP)