作者bnsblue (想當你的天空)
看板EE_DSnP
標題[請益] 想請問一個笨問題
時間Mon Apr 7 22:44:02 2008
想請問大家一個呆呆的問題...
就是在做calcModNum的時候
我一直都不懂ModNum的Default Constructor到底是要做什麼
// Default constructor
// ==> Make sure _num is within [0, _modulus)
// TODO: Implement the constructors
ModNum(int i = 0);
為什麼要有那個default參數呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.137.67.155
1F:推 trancewu:是說ModNum應該會傳一個int進去,沒有的話用0? 04/07 23:49
2F:→ trancewu:另外我們是不是要OVERLOAD等號啊@@ TEST時好像出了問題 04/07 23:50
3F:→ bnsblue:一樓你說的我知道~~^^ 04/08 00:04
4F:→ bnsblue:阿阿天啊我終於知道default constructor是要幹嘛了XD 04/08 00:05
5F:→ bnsblue:請問沒有Overload等號是在哪裡會出問題呢? 04/08 00:07
6F:推 trancewu:所以default constructor是我剛剛猜想的那樣嗎? 04/08 00:09
7F:→ trancewu:另外等號我在想想@@ 可能是我弄錯了 04/08 00:09
8F:→ bnsblue:因為等號其實在.h裡面就有overload了~ 04/08 00:11
9F:→ bnsblue:default constructor只是要設定該ModNum的值而已orz 04/08 00:11
10F:→ bnsblue:我想超久到底要幹嘛的... 04/08 00:12
11F:推 trancewu:不過等號只有兩個ModNum相等,不能ModNum=int... 04/08 00:15
12F:推 ric2k1:可以 ModNum = int 喔! 只要你有定義 ModNum(int i = 0) 04/08 00:18
13F:→ ric2k1:這個 default constructor, '= int' 就會 implicitly 呼叫 04/08 00:19
14F:→ ric2k1:constructor 然後再執行 ModNum = ModNum 的 assignment! 04/08 00:20
15F:推 trancewu:我被搞混了 ModNum(int i=0)不是default constructor嗎? 04/08 00:20
16F:→ trancewu:歐歐 這樣我懂了 04/08 00:21
17F:推 ric2k1:FYI, you can also refer to 螞蟻書 v5, p598, 最後兩段 04/08 00:35
18F:→ ric2k1:關於 single argument constructor. 04/08 00:35
19F:→ bnsblue:關鍵..! 04/08 00:44
20F:推 kalawang:請問FYI是什麼意思XD 04/08 01:07
21F:推 trancewu:FOR YOUR INFOMATION 04/08 08:05
22F:→ trancewu:阿...INFORMATION 04/08 08:06
23F:推 kalawang:THX 04/08 19:18