作者ric2k1 (Ric)
看板EE_DSnP
標題[討論] HW 1.2.p2 的 return garbage
時間Fri Oct 15 23:10:30 2010
有人在問,hw 1.2.p2 的 return garbage (如下) 是甚麼意思?
// cerr an error message if i >= _size; return garbage
unsigned& operator[] (unsigned i) { } // TODO
const unsigned& operator[] (unsigned i) const { } // TODO
就是說,如果 i >= _size,這樣的 array access 是不合理的,
所以要 cerr 一個 error message,
但是 function 本身的 prototype 規定還是要 return 一個東西的 reference,
但是由於已經是呼叫錯誤了,所以 return 的東西 caller 拿到應該也是不能用,
所以我說就 return 一個 garbage 吧!
當然不是所有東西都能當 garbage return 的,
像是 null 或是 local (temp) variabel 就不行,那甚麼可以呢?
其實就隨便啦! 反正是要被視為 garbage 的,只要是型態符合就好!
大家可以想想看,其實選擇不多...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.193.11.13
1F:→ kosodoro:我在課本上看到的寫法是強制脫離程式 10/16 00:24
2F:→ kosodoro:請問我可以這樣寫嗎? 10/16 00:24
3F:→ ric2k1:請不要強制脫離程式啦exit(0)!就給他return一個東西就好了! 10/16 00:47