Re: [語法] 請問回傳值形態不同,函數如何宣告

看板C_and_CPP作者 (眠月)時間15年前 (2010/05/11 13:38), 編輯推噓7(704)
留言11則, 8人參與, 最新討論串4/6 (看更多)
※ 引述《a77d4e06 (喵~>"<||)》之銘言: : 如題, : 請問我同一個函數要回傳一個字串或是一個數值, : 那該函數要設甚麼形態呢?? 如果可以接受知其然不知其所以然的話, 那可以直接使用 boost::any 就好了。 #include <boost/any.hpp> boost::any f ( int t ) { if ( n == t ) return std::string("abc") ; else return 123 ; } int main () { std::string s = boost::any_cast<std::string>(f(0)) ; int n = boost::any_cast<int >(f(1)) ; } -- To iterate is human, to recurse, divine. 遞迴只應天上有, 凡人該當用迴圈.   L. Peter Deutsch -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.160.115.219

05/11 21:40, , 1F
boost真是充滿了無限的可能....
05/11 21:40, 1F

05/11 21:51, , 2F
看完浮現....X...這三小@@"
05/11 21:51, 2F

05/11 22:04, , 3F
這是C++這不是C, 這是C++這不是C.... (哭著跑開Q_Q~)
05/11 22:04, 3F

05/11 22:15, , 4F
真想知道他的實作...
05/11 22:15, 4F

05/11 22:16, , 5F
boost的原始碼都是開放的 去下載來看吧 XD
05/11 22:16, 5F

05/11 22:33, , 6F
請問.hpp這是什麼格式的檔案@@
05/11 22:33, 6F

05/11 22:33, , 7F
跟 .h 的意思差不多
05/11 22:33, 7F

05/11 22:38, , 8F
最後還是 cast 成特殊型態.. 那也可以傳個 void* 不是嗎?
05/11 22:38, 8F

05/11 22:41, , 9F
其實感覺都差不多就是....
05/11 22:41, 9F

05/12 00:49, , 10F
if ( n == t ) n的來源是??
05/12 00:49, 10F

05/12 10:44, , 11F
就跟之前的例子一樣,自己設個條件來判斷要傳啥
05/12 10:44, 11F
文章代碼(AID): #1BwLt0PB (C_and_CPP)
討論串 (同標題文章)
文章代碼(AID): #1BwLt0PB (C_and_CPP)