問題タブ [visual-c++-2012]

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 投票する
2 に答える
1272 参照

c++ - Clang 3.1 と VC11 Beta ヘッダーを使用して C++ ソースをコンパイルすることはできますか?

Windows で stl ヘッダーと clang を使用して、かなり単純な「hello world」プログラムをコンパイルしようとしていますが、それができません。

VC11 Beta を使用してリポジトリから Clang 3.1 を問題なくコンパイルしました。現在、コンパイル済みの Clang を使用して、VC11 ヘッダーを使用して「hello world」サンプルをコンパイルしようとしていますが、VC11 でシミュレートされた可変個引数テンプレートのマクロ マジックで Clang が失われていることを示すようなエラーが多数表示されます。私はこのマクロ マジックを直接利用しているわけではありません。

私のインクルードディレクトリ:

  • C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include
  • C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\atlmfc\include
  • C:\Program Files (x86)\Windows Kits\8.0\Include\um
  • C:\Program Files (x86)\Windows Kits\8.0\Include\shared
  • C:\Program Files (x86)\Windows Kits\8.0\Include\winrt

次のようなエラーが表示されます。

C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\include\xstddef:1094:24: エラー: '_Nil' は値を参照していません

そして、マクロに関連するその他の束。

誰かがこのマクロの問題を克服できましたか? このマクロを展開する際に、clang プリプロセッサに問題はありますか?

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

c++ - BitScanForward64 を使用できません

ビットボード (__int64s) を使用する C++ でチェス エンジンを構築しています。計算のために BitScanForward64 を使用する必要があります。しかし、それを呼び出すと、次のエラーが発生します。

エラー C3861: '_BitScanForward64': 識別子が見つかりません

私はそれを次のように含めます:

BitScanForward64 も同様です。

Windows 7 (64 ビット)でVisual Studio 11を使用しています。CPU:インテル Core i7-2600K

私はこれまで C++ を使った多くのプロジェクトを行ったことがないので、なぜこれが起こっているのかわかりません。助けてください!

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

c++ - std::unique_ptrを使用する必要があります私のクラスのstd::vectorメンバー変数で?

タイプのオブジェクトを格納したいタイプclass Cのメンバー変数を持つaを想像してみてください。内のオブジェクトを追加または削除する2つの関数があります。 また、オブジェクトのコレクションを読み取る必要があるため、の消費者がアクセスできるようにする必要があります。コレクションの外部リーダーにはコレクションを変更する手段がないため、オブジェクトはによってのみ所有されます。m_MyListstd::vectorMyClassCm_MyListm_MyListCMyClassMyClassC

今私の質問:C ++ 11スタイルで、ベクトルに格納するのに最適なTは何ですか?可能性は次のようです。

  • std::vector<MyClass>
  • std::vector<MyClass*>
  • std::vector<unique_ptr<MyClass>>、をstd:moveに押し込むために使用unique_ptrするvector
0 投票する
1 に答える
131 参照

c++ - VS11ベータ版のないコンピューターでVS11ベータ版で開発されたアプリを実行する

VisualStudio11ベータ版を使用してアプリを開発しました。アプリは、VS11ベータ版がインストールされていないコンピューターでは実行されません...

.NET Framework 4.5をインストールしましたが、役に立ちませんでした...

VS11を使用していないコンピューターでファイルを機能させるには、ファイルを何をインストールまたは追加する必要があるかについて、誰かが提案を持っていますか?

0 投票する
5 に答える
12414 参照

c++ - std :: thread :: join()は、VS2012 RCを使用しているときにmain()が終了した後に呼び出されるとハングします

次の例は、Ubuntu12.04でClang3.2またはGCC4.7を使用してコンパイルすると正常に実行されます(つまり、ハングしません)が、VS11BetaまたはVS2012RCを使用してコンパイルするとハングします。

問題std::thread::join()は、終了後に呼び出された場合に戻らないということのようmainです。cthread.cWaitForSingleObjectで定義されているでブロックされます。_Thrd_join

SleepFor(100);の最後でコメントを外すと、非静的mainにするのと同様に、プログラムを適切に終了できます。std_testを使用boost::threadすると、問題も回避できます。

それで、ここで未定義の動作を呼び出しているのか(私にはありそうもないようです)、またはVS2012に対してバグを報告する必要があるのか​​どうかを知りたいですか?

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

c++ - vs2012 rc の範囲ベースの for ループ

次の範囲ベースの for ループは、VS2012 で正常に動作します。

ただし、これは機能しません。

違いは何ですか?

PS: std::initializer_list テンプレート クラスも見つかりません。この新しい VS2012 RC がサポートする C++11 の機能を知る必要があります。何か案が?

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

c++ - decltype およびメンバー関数 (ポインターではない) 型

メンバー関数型というような型はないので(ないですよね?)、 になると思いC::typeますint (int)

ただし、以下は Visual C++ 2012 RC を使用してコンパイルできません。

では、どのタイプdecltype(C::Foo)ですか?

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

c++ - メンバー関数にバインドされた std::function

次のコードは VS2012 でコンパイルされません

ただし、割り当てを次のように変更します。

動作します。

元の構文を示すオンラインの例がたくさんあります。この構文を禁止するために、C++11 仕様で何か変更がありましたか?

課題の有効な短縮形はありますか?

編集:コンパイラエラー(再現性のためにわずかに編集)は次のとおりです。

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

c++ - C++11 ファイルシステム (VS2012)

vs2012 に含まれるヘッダーに関するドキュメントを見つけるのに苦労しています。ここで言及されているようですが、使用方法に関するリンクは提供されていません。私が本当に探しているのは、それを使用する方法に関するドキュメントであり、ビジュアル スタジオの実装が優先されます。ありがとう

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

.net - Azureの起動タスクがハングする

Visual C ++ 2012ランタイムライブラリセットアップファイル を追加したMVC4ロールを持つAzureプロジェクトと、それをサイレントインストールするためのスクリプトがあります。

スクリプトが機能し、ライブラリがインストールされます。唯一の問題は、タスクが終了せず、インストールプロセスが終了しないことです。これにより、ロールの開始がブロックされます。 ロールインスタンス

リモートデスクトップを使用してサーバーに接続しました。タスクマネージャーを見ると、プロセスvcredist_x64.exeがわかります:(実際には2つですが、これは正常だと思います)

WindowsServerタスクマネージャー

プロセスを右クリックして強制終了すると、展開が正常に終了し、役割が開始されます。

これは、ServiceDefinition.csdefで起動タスクがsimpleに設定されている場合に問題になります。これにより、タスクが終了して役割を開始するまでサーバーが待機するためです。そのため、タスクをバックグラウンドに設定して、起動スクリプトが役割の開始をブロックしないようにしましたが、それでもプロセスはバックグラウンドで実行されているため、手動で強制終了する必要があります。

このスクリプトは機能するはずであり、以前は2010 VC ++ライブラリを使用していました(ただし、EXITはありませんが、スクリプトがエラーコードを返した場合に役割がブロックされないようにするために存在する必要があります)。

動作しなかったので、インストール後に手動でプロセスを強制終了すると思いました。

動作しませんでした、プロセスはまだ生きていました。スクリプトは、サーバー上で手動で実行した場合、またはローカルで実行した場合に実際に機能しますが、Azureが展開中に実行しようとすると、ハングします。

私のスタートアップタスクは、ServiceDefinition.csdefで次のように定義されています。

ログインはC:\Resources\temp\{RoleId.RoleName}\RoleTempすべてがうまくいったと言っています。

startup-taskを単純ではなくバックグラウンドに設定することで役割がブロックされないようにすることはできますが、それでも問題は解決しません。ありがとう。