セマンティック分析フェーズ中に、このタイプのエラーが表示されます。これらのタイプのエラーはコンパイル時に検出されます。
コンパイル時エラーのほとんどは、スコープと宣言のエラーです。 例えば: 未宣言の識別子、または複数の宣言された識別子。型の不一致は、別のコンパイル時エラーです。
間違った変数を使用したり、間違った演算子を使用したり、間違った順序で演算を実行したりすると、セマンティック エラーが発生する可能性があります。
セマンティック エラーには次のようなものがある可能性があります。
- 互換性のないタイプのオペランド
- 未宣言の変数
- 実引数と仮引数が一致しない
例 1: 初期化されていない変数の使用:
int i; void f (int m) { m=t; }
このコードでは、t が宣言されていないため、セマンティック エラーが表示されます。
例 2: タイプの非互換性:
int a = 'hello'; // the types String and int are not compatible
例 3: 式のエラー:
String s = '...'; int a = 5 - s; // the - operator does not support arguments of type String