→ danny8376:改成 08/02 20:11
#define RNOK( exp ) {
const ERR_VAL nMSysRetVal = ( exp );
if( ERR_CLASS::m_nOK != nMSysRetVal )
ASSERT( 0 );
(ERR_CLASS::m_nOK!=nMSysRetVal?nMSysRetVal:NULL) }
danny8376:應該就可以得到回傳值了
我想問的是RNOK(data)有一個return value
但使用上不是 A=RNOK(data) 用A去接回傳的value
那程式回傳的value是由哪個變數去接收?
而不是想去得到回傳值
→ danny8376:還有 #define 寫的函數 嚴格上來說不是函數 08/02 20:22
→ danny8376:你可以試試 用#define寫個內容為return 0;的函式 08/02 20:23
→ danny8376:你會發現 如果用在 main 下的話 程式會直接結束 08/02 20:24
→ danny8376:他的回傳是對呼叫RONK的函數用return 08/02 20:25
→ danny8376:假如在test函數裡用RONK 那回傳值是由test函數回傳 08/02 20:26
→ danny8376:上面那段程式就當沒看到就好= = 08/02 20:27
這邊你的意思是我在main裡用RNOK他的return value是對映main
假設我在test()裡面用RNOK他的return value是對映test
EX:
#define RNOK(){return 3;}
int test()
{
RNOK();
}
main()
{
a=test(); 這時候a會等於3
}
是這樣嗎?
※ 編輯: evilkiss 來自: 140.124.43.172 (08/02 21:53)
※ 編輯: evilkiss 來自: 140.124.43.172 (08/02 21:55)
→ danny8376:恩恩 08/02 22:34
→ evilkiss:3Q 08/03 13:27