9
extern "C" 
{
#endif
#include <stdint.h>
#include <limits.h>
#include "attributes.h"
}
#endif

私は追加しましたextern "C" { } その後、C2059 stringエラーが発生したので、使用しようとしましたが#endif、別の4つのエラーがあります。

Error   1   error C2059: syntax error : 'string'    d:\c-sharp\c++ 
compiling\consoleapplication7\consoleapplication7\libavutil\rational.h 31 1
ConsoleApplication7

この文字列エラーを修正するにはどうすればよいですか?

4

1 に答える 1

25

おそらく、C ソース ファイルからこのコードをインクルードしているのでしょうか。

extern "C" {ガードは C++ でのみ必要 (または理解) されます。それらを C ファイルから省略できます。それらを C++ ファイルに含め __cplusplus、ヘッダー ファイルの ifdef で保護する必要があります。

#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include <limits.h>
#include "attributes.h"
#ifdef __cplusplus
}
#endif
于 2013-04-23T12:42:01.193 に答える