0

関数がコンパイラに組み込まれている場合、コンパイル時に検出する方法はありますか? たとえば、次のようなものです。

#ifndef ITOA_FUNCTION
#define itoa myitoaimplementation
#endif

前もって感謝します。

4

1 に答える 1

2

いいえ、直接的なものはありません。あなたができる最善のことは、プラットフォーム、コンパイラのバージョンなどから推測することです.

ただし、ほとんどの場合、他の 2 つのルートのいずれかを優先します。1 つは、独自の実装にコンパイラが使用する名前とは異なる名前を付け、コンパイラが似たようなものを提供するかどうかにかかわらず、常にそれを使用することです。

2 つ目は、このような関数の実装を別のファイルに入れ、そのファイルをプロジェクトに含めるかどうかを決定するだけで、makefile の有無を処理することです。

于 2012-07-01T03:49:47.797 に答える