問題タブ [c1001]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
190 参照

.net - char * から System::String への変換でコンパイラの内部エラーが発生する

として文字列がありますchar *。に変換する必要がありSystem::Stringます。いろいろ試してみたら、コンパイラの内部エラーが発生!

元のコード:

1まず、次のような警告が表示されforcing value to bool 'true' or 'false' (performance warning)ます。{ ToString と警告 c4800 } で解決策を見つけました。次のようなものを使用するように指示されています。

次に、このエラーが表示されますSystem::String::String(const wchar_t *, int, int)' : cannot convert parameter 1 from 'signed char *' to 'const wchar_t *'

2次に、次のように簡単にします。

私は取得fatal error C1001: An internal error has occurred in the compiler.し、ここに残りの詳細があります:

  1. 詳細から、f: ドライブ内のファイルを示します。私はそのハードドライブを持っていません。DVD-ROMのことでしょうか?
  2. std::stringの型として使ってみましたfileName。それでも同じ結果です。

どんな助けでも大歓迎です!ありがとう。

0 投票する
0 に答える
177 参照

c++ - C1001 クラス オブジェクトの作成時のコンパイル エラー

それを使用して次のクラスのインスタンスを作成するGame newGame;と、コンパイラ エラーが発生したことを示す c1001 エラーがスローされます。

game.h:

main.cpp:

完全なエラー コード:
重大度コード 説明 Project File Line Error C1001 コンパイラで内部エラーが発生しました。CityOfDwarves C:\Users\Daniel\Documents\Visual Studio 2015\Projects\CityOfDwarves\CityOfDwarves\main.cpp 1

0 投票する
4 に答える
5420 参照

c++ - C++ の致命的なエラー C1001: コンパイラで内部エラーが発生しました

リリース モードでコンパイルすると、次のエラーが発生します。

VS2015 Update 2 RC を使用しています。

よくわかりませんが、オプティマイザーのバグでしょうか?

それを引き起こすコードは次のとおりです。

window.h

ウィンドウ.cpp

NativeWindow は、どの OS のネイティブ ウィンドウでもあります。

GCC 5.1 でコンパイルされた作業コードは次のとおりです: https://ideone.com/4YvjRK

メモするだけです。

継承を削除して、このようなものに置き換えるとします。

うまくいきます!

これは、継承なしで GCC 5.1 でコンパイルされた同じコードです: https://ideone.com/Mu0A42

この動作の原因と思われるのは、NativeWindow からの NativeControl の派生です。

次のようにそれを再現する手順は次のとおりです。

  1. Window クラスから dtor の宣言と定義を削除します。
  2. ビルドを試みます (再ビルドではありません)。
  3. コンパイラは文句を言って、たくさんのエラーを出します。

1>C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\memory(1194): エラー C2338: 不完全な型を削除できません 1> 1> 1>C:\Program Files (x86)\ Microsoft Visual Studio 14.0\VC\include\memory(1195): 警告 C4150: 不完全な型 'Yalla::Window::NativeControl' へのポインターの削除; デストラクタが呼び出されていません 1>
d:\Users\Eyal\Projects\Code\Yalla\core\src\runbox\include\window.h(13): 注: 'Yalla::Window::NativeControl' の宣言を参照してください 1>
window .cpp 1> 1>ビルドに失敗しました。

  1. dtor を Window クラスに追加し直します。
  2. 再度ビルドします (再ビルドではありません)。
  3. この時点で、コンパイラは「致命的なエラー C1001: コンパイラで内部エラーが発生しました」というエラーを表示するはずです。

興味深いのは、再構築を行うと問題が解決するように見えることです!

私が達成したいのは、基本的にNativeWindowの実際の実装を別のファイルに入れることです。主に単純化のためであり、再利用性についてはあまり重要ではありません。

unique_ptr テンプレートを混乱させる可能性のある継承でそれを行う代わりに、合成を通じてそれを行い、ゲッターを介して NativeWindow のインスタンスを公開することもできると思います、問題はそれを行うためのより良い方法があるかどうかです。

長い間触れていなかったC++を再学習しているので、もし私がやっていることのいくつかが意味をなさない場合は、それについて教えてください!

アップデート:

C++ 標準は次のように述べています。

unique_ptr のテンプレート パラメータ T が不完全な型である可能性があります。

Herb Sutter のブログで、それに関する投稿を見つけました。

0 投票する
2 に答える
901 参照

visual-c++ - VC++ VS6 では、単純な printf で致命的なエラー C1001: INTERNAL COMPILER ERROR が発生する

Windows 7 で Visual Studio 6 、 vc++ を使用しており、デフォルトで VS6 によって作成される単純な helloworld プログラムを作成しています。しかし、printfが原因で次のエラーが発生しています:

エラー :

printf と sprintf が機能しないのはなぜですか?