看板 EE_DSnP 關於我們 聯絡資訊
有一次我打enum的時候,內容物的括號{}後面忘了加";" 然後又不太熟用法(就是亂用的意思啦) 就變成這樣 #include <iostream> using namespace std; int main() { enum COLOR{RED,GREEN=3,BLUE} <-----無分號 COLOR=RED; <-----不是COLOR a=RED; cout << COLOR << endl; COLOR=GREEN; cout << COLOR << endl; COLOR=BLUE; cout << COLOR << endl; system("pause"); } 結果compile竟然過了,也輸出了0,3,4 不知道是為什麼呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.211.52.242
timrau:把enum COLOR {...}和COLOR=RED;接起來就知道了 11/09 10:48
timrau:相當於宣告一個variable COLOR with type COLOR 11/09 10:49
timrau:然後做了各式各樣的事這樣 11/09 10:49
timrau:所以基本上是對得誤打誤撞... 11/09 10:49
wintercobra:原來enum完可以直接當宣告型態呀... 11/09 11:17
wintercobra:還有啊,老師的投影片說,function的default argument 11/09 11:19
wintercobra:要在第一次遇到function name的時候就給值 11/09 11:20
wintercobra:也幾乎就是在function prototype的時候就要指定 11/09 11:20
wintercobra:不過如果在prototype不給而在define時才給的話 11/09 11:22
wintercobra:只要使用的時候都傳值給function(不用到default) 11/09 11:22
wintercobra:好像也可以喔 11/09 11:23
MrOrz:是說struct也可以這樣用,不過老師應該會跳過直接教class XD 11/10 01:35
ric2k1:回 function default value 的問題: 好像是吼, 那麼說課本 11/10 11:19
ric2k1:寫錯了而我也沒有試過... 11/10 11:20