この記事ではVisual Studioなどで発生するコンパイルエラーC2383について解説します。 主な原因は、関数ポインターに既定の引数を指定した際にエラーが発生する点にあります。 C言語は既定引数をサポートしていないため、コード記述に誤
続きを読む »コンパイラエラー C2384は、C言語やC++/CLI環境で発生するエラーです。 特に、__declspec(thread)によるスレッドローカル変数の宣言が、管理対象コードやWindowsランタイムクラスで使用された場合に起こりやすい問題
続きを読む »Microsoft Visual C++で発生するC2385エラーは、複数の基本型から同じ名前のメンバーを継承した際にアクセスが曖昧になる場合に発生します。 各メンバーに明示的なスコープ修飾子を付けるか、基底クラスにキャストして指定する方法
続きを読む »C2386エラーは、同じスコープ内で既に定義されているシンボル名を再利用しようとすると発生するコンパイラの警告です。 例えば、同じ変数名や識別子を誤って重複して宣言するとこのエラーが表示されます。 エラーメッセージを参考に、コード内の名称の
続きを読む »C2387は、複数の基底クラスから同じ名前の関数を継承した際に、どの関数を呼び出すかが曖昧になり、コンパイラがエラーを出す状況です。 明示的にどの基底クラスの関数を参照するか指定することで解決できます。 エラー発生の原因 多重継承による関数
続きを読む »C言語環境で発生するコンパイルエラー C2388について説明します。 エラー C2388は、__declspec(process)と__declspec(appdomain)の両方の属性が同一シンボルに指定されたときに発生します。 各属性は
続きを読む »この記事では、C言語で発生するコンパイラ エラー C2389の原因と対処法について解説します。 エラーメッセージ「operator : オペランド ‘nullptr’ は正しくありません」が出るケースを例に、null
続きを読む »この記事では、C言語で発生するコンパイラエラー C2390 について簡潔に説明します。 エラー C2390 は、ストレージクラス指定が不適切な場合に表示されるもので、たとえばグローバル変数に対して register キーワードを使用すると発
続きを読む »Microsoftのコンパイラで、tryブロックにcatchハンドラーがない場合にC2317エラーが発生します。 例外を投げた時に適切なcatchブロックが存在しないと処理できず、コンパイル時にエラーとなるため、コードにcatchハンドラー
続きを読む »Visual Studioなどの開発環境で、/EHscオプションを使用している場合、catchブロックに対応したtryブロックが存在しないとエラーC2318が発生します。 catchの直前にtryブロックを追加するなど、正しい例外処理の記述
続きを読む »C2319は、tryまたはcatch文の直後に中括弧による複合ステートメントがない場合に発生するコンパイルエラーです。 例えば、catch( C ) ;と記述するとエラーとなり、正しくはcatch( C ) {}のようにブロックを記述する必
続きを読む »エラー C2320は、クラス定義内で使用されるアクセス指定子(例えば、public、protected、private)の後に必要なコロン(:)が欠如している場合に発生します。 エラー C2320 の発生条件と原因 アクセス指定子の基本 p
続きを読む »C言語環境で発生するコンパイラエラー C2322は、dllimportで宣言された関数のアドレスに静的でない値が指定された場合に発生します。 このエラーは、静的なアドレスが必要な場面で不適切な値が用いられていることを示しています。 エラー
続きを読む »コンパイラ エラー C2323について説明します。 operator new と operator delete のオーバーロードは、グローバル名前空間またはクラスメンバーとして定義する必要があります。 静的に宣言したり他の名前空間に配置す
続きを読む »コンパイラ エラー C2324 に関する例として、誤った識別子を用いたデストラクターの呼び出しが原因でエラーが発生するケースを紹介しています。 例では、整数型の識別子でデストラクターを呼び出すとエラーになるため、正しい型名を指定して呼び出す
続きを読む »C2325エラーは、型指定の誤りにより予期しない型でデストラクターが呼び出されたときに発生するコンパイルエラーです。 例えば、誤った型を使ってデストラクターを実行するとエラーとなります。 エラー発生原因の詳細解説 本節では、コンパイラエラー
続きを読む »この記事では、C言語環境で発生するコンパイラ エラー C2326について簡潔に解説します。 エラーは、関数内でアクセスできない変数やメンバーにアクセスしようとした際に発生し、原因の特定が難しい場合もあります。 エラーC2326の現象とメッセ
続きを読む »Microsoftのコンパイラエラー C2327 は、入れ子のクラスから外側の非staticメンバーにアクセスしようとした場合に発生します。 たとえば、プロパティの型と同じ名前のメンバーを定義していると、正しく名前が解釈されずエラーとなるこ
続きを読む »エラーは、不完全な型定義、特にタグ名が抜けたtypedef宣言が原因です。 例えば、typedef struct * pS;と記述するとエラーが出ますが、typedef struct S* pS;とタグ名を明示すると正しくコンパイルできます
続きを読む »