0

関数名が必要です。名前を印刷するために2つの手順を実行しました: マクロの使用:

define LogFnc(info) do {cout<<"=FUNCTION= "<info ; } while(0)

そして関数を使用する:

void LogFnc(string info)
{
    cout<<"=FUNCTION= "<<info;
}

これらの可能性のいずれかを呼び出す手順:

int main() {
    LogFnc(__FUNCTION__);
}

マクロ (最初の 1 つ) を使用した場合、関数名が出力されないのはなぜですか?

4

1 に答える 1

0

cout<<"=FUNCTION= " << info

#define LogFnc(info) cout<<"=FUNCTION= " << info ; 

さらに、あなたの偽ループdo{...}while(0)は醜く、直感的ではなく、非生産的です。

于 2012-11-27T12:29:14.583 に答える