私たちの静的分析ツールは、次のようなヘッダー ファイルにプロトタイプがある場合、「戻り値の型の型修飾子が役に立たない」と文句を言います。
const int foo();
このように定義したのは、関数が決して変わらない定数を返しているためです。API をconst
配置した方が明確に見えると考えたからです。
C標準では、明示的に初期化されていない場合、すべてのグローバルがゼロに初期化されるとすでに述べられていますが、これは明確にするためにグローバル変数を明示的にゼロに初期化することに似ているように感じます。結局のところ、それは本当に問題ではありません。(しかし、静的分析ツールはそれについて不平を言うことはありません。)
私の質問は、これが問題を引き起こす可能性がある理由はありますか? ツールによって生成されたエラーを無視する必要がありますか?それとも、明確で一貫性のない API の可能性を犠牲にしてツールをなだめる必要がありますか? const char*
(ツールが問題を抱えていない他の定数を返します。)