次のような古いスタイルの関数定義を使用するACファイルをコンパイルする場合
int foo(a)
int a;
{
...
}
g ++はエラーを出します:'a'はこのスコープで宣言されていません。gccはこれを解析できます。g ++にこれを認識させる方法はありますか?
私はcファイルとc++ファイルを組み合わせてコンパイルしているので、これは私にとって問題になります。関連する質問は、このタイプの混合ソースを構築するための標準的な方法は何ですか?すべてのファイルでg++を実行していますか、それともccファイルのみで実行していますか?前者は便利ですが、cとc ++の仕様に一貫性がないため、問題が発生し続けます(たとえば、char [4] = "four";)