問題タブ [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 投票する
1 に答える
547 参照

c - C++/CLI から C へのバイト配列

Visual C++ に次のような関数があります。

バイト配列を渡すために使用されます。そして、このメソッドでは、バイト配列パラメーター (inputBytes) を受け入れる C クラスのメソッドにアクセスする必要があります。このようなメソッドをCクラスに配置しました

しかし、それはエラーをスローします.Cのバイト配列の構文は何ですか. この bytearray を c++ から c に渡す方法。誰でも解決策を見つけるのを手伝ってくれませんか。

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

visual-studio - Windows 8 SDK を Visual Studio 2012 と統合する方法

ドキュメントによると: http://msdn.microsoft.com/en-us/windows/desktop/hh852363.aspx

コマンド ライン ビルド環境を削除することにより、Windows SDK には次のコンポーネントが含まれなくなりました。

Windows SDK プラットフォーム ツールセット

Visual C++ コンパイラと C ランタイム (CRT)

Windows SDK 構成ツール

Windows SDK 構成ツールが削除された場合、パスを簡単に更新する方法はありますか? Microsoft.Cpp.Win32.user.props (およびその他のプロパティ ページ) を手動で更新できることはわかっていますが、すべてを探し回るよりも簡単な方法を望んでいました。多分私は明らかな何かを見逃しています。

0 投票する
7 に答える
75325 参照

c++ - 数を否定する最速の方法

私は今朝ここで考えていました。もちろん、正から負へ、そして負から正へと反転する最も速い方法は何でしょうか。最も簡単な方法は次のとおりです。

また

しかし、私は、コマンドシフトとポインターを使用してこれを行うと思いました...コマンドシフト演算子とメモリを使用して、値の符号を変更することは本当に可能でしょうか?

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

visual-c++ - MFC アプリケーション ウィザードによって生成された属性付きデータベース クラスにデータを読み込むにはどうすればよいですか?

Visual C++ 2012 で MFCApplication ウィザードを使用し、[属性付きデータベース クラスを生成する] をオンにすると、次のような特別な構文 (属性付き C++ クラス) を含むヘッダーが生成されます。

上記のヘッダーは、ほとんど空の実装ファイルに対応しています。

それが全体の実装クラスでした。次の点に注意してください。

A. 親クラス名がどこにも指定されていません。B. ここでは「Visual C++ マジック」が行われています。つまり、最新の C++ の初心者である私には戸惑います。 ここdb_sourceに文書化されていますが、文書はかなり薄いか、少なくとも私には不透明です。

質問:

  1. この構文を最初に見たときは戸惑いましたが、おそらくVisual C++のこの属性機能の変形であることがわかりました。それですよね?

  2. これらの生成された「属性付きデータベース クラス」オブジェクトをどのように使用するつもりですか? このドキュメンテーションを見つけましたが、そのドキュメンテーションを注意深く見ると、そのコード サンプルは人々に古い方法と新しい方法を示しており、IDE ではできないこの新しいオブジェクトの使用方法を知りたいことを教えてくれません。ドキュメントやコード補完機能があれば教えてください。また、CMFCApplication2Setウィザードによって生成されたクラスは、型やクラス名を参照していません。迷っています。なんらかの IDE 機能を使用して、この魔法のような謎のオブジェクトに魔法のように注入されたメソッドやものを知ることができれば、もっとうまくいくでしょう。私が考えることができる唯一の考えは、古い方法を学び、古い 2 つの別個の ATL 型の世界から呼び出すことができるすべてのものを学び、それらを組み合わせる方法を学ぶことです。

簡単に言えば、ウィザードによって新しい MFC アプリで生成される、これらの属性付きデータベース クラス インスタンスの 1 つである変数を実際に使用するために知っておく必要がある最小限の構文を探しています。以下に示すインスタンスは、MFC ドキュメント クラスのメンバーであり、MFC ドキュメント クラスCMFCApplication2Set m_MFCApplication2Set内のフィールドとして宣言されています。

私が試したのは、この「型指定されていないオブジェクト」を使用することです。このオブジェクトには多数のデータ フィールド (m_X) があり、IDE コード補完に表示されるメソッドは 1 つだけGetRowSetPropertiesです。なんらかの魔法やインジェクションが行われているおかげで、この生成された属性付きデータベース クラス (目に見えて何も継承していない) は、編集時とコンパイル時に私にとって完全な謎です。

これは、コンストラクターが実行されたときに自分自身を初期化したかどうかを確認するために、このことを調べようとしているところです。

コンパイル時と編集時に、IDE は、何も継承しないこの「匿名」クラスに含まれる型について何の助けにもなりませんが、私が推測している属性を介したある種のインジェクションのために多くの秘密の力を取得します。デバッグ時に、この C++ クラスには多数のデータ フィールドがあることがわかりますが、それでも使用方法を理解するのには役立ちません。これらのいずれかを使用してデータベースからレコードセットを取得する最小限のコード サンプルは素晴らしいでしょう。

ここに画像の説明を入力

更新: 呼び出しOpenDataSourceは楽しいものです。コンパイルはされますが、IDE はそれが有効であるとは見なさないからです。それにもかかわらず、実行され、結果として 0 が返されますが、実際にはこのCThingyThatVisualStudioGaveYouThatYouDontKnowWhatItIsは初期化されません。

ここに画像の説明を入力

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

visual-c++ - C .Net で Bitmap に割り当てられたメモリを解放する

System::Drawing::Bitmap に割り当てられたメモリを解放する方法を Google で調べたところ、dispose 関数を呼び出す必要があることがわかりましたが、次のエラーが発生しました。

エラー C2039: 'Dispose' : 'System::Drawing::Bitmap' のメンバーではありません代わりに '~Bitmap' というデストラクタを呼び出す必要があります

そして私はそれを解放することはできません。

0 投票する
3 に答える
2002 参照

c++ - パフォーマンス-イテレータまたはポインタを使用してベクトルを反復処理しますか?

私は現在、可能な限り優れたパフォーマンスを発揮する必要のあるアプリケーションを作成しています。IDE(およびコンパイラ)としてVS2012を使用しています。

ベクトルを反復処理しているときに、イテレータとは対照的にポインタソリューションの方が速度の点ではるかに高速であることに気付きました。何故ですか?つまり、イテレータは基本的に同じものです。少なくともそうあるべきです。

この例を見てください:

コンパイラに必要な最適化はありますか?私はすべての標準設定を使用しているので、-O2はすでに有効になっています。前もって感謝します。

編集: 私はリリースでコンパイルしていて、Ctrl + F5で実行しています(デバッグなしで)。

EDIT2: 実際のソースコードはクイックソートの実装です。ここに完全なソースへのリンクがあります、その非常に短いのでそれをチェックしてください。

0 投票する
3 に答える
377 参照

c++ - ビジュアルスタジオで奇妙な動作をする定義された定数

Visual Studio 2012 Professional を使用して、最初の Windows/DirectX プログラムを作成しています。私のプログラムの一番上に、私はこれを持っています:

定数を使用することを決定する前は、これは完全に正常に機能していました。

しかし、この行を変更すると:

約30種類のエラーが発生します。最初の数行だけが関連していると確信しており、残りはそれらのコード行が正しく機能しなかったためです..

定義された定数を正しく理解していれば、プリプロセッサはコンパイルが完了する前に値を交換するだけなので、非常に混乱します。

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

visual-studio - VS 2012 をインストールせずに Visual Studio 2012 で作成された C++/C# をビルドしますか?

いくつかの C++ ネイティブ プロジェクトといくつかの C# プロジェクトを含む VS2012 の Visual Studio ソリューション ファイルがある場合、Visual Studio 2012 自体をインストールせずにこのソリューションをビルドできますか?

これにより、(特に) Build-Server ノードのメンテナンスが容易になります。

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

visual-c++ - C++/CX で、参照されていないハット ^ パラメータが警告を生成しないのはなぜですか?

私は Windows ストア アプリに取り組んでおり、Visual Studio の警告レベルを 4 に上げたばかりなので、参照されていないパラメーターの警告を修正しています。その過程で、参照されていないフレームワーク管理パラメーター (^) は、他の参照されていない「正式な」パラメーターのように C4100 警告を生成しないことに気付きました。私が何を意味するかを説明するには:

2番目が警告を生成しないのはなぜですか? そして、そのような警告をオンにする方法はありますか? コードに一貫性を持たせたいのですが、これらすべてを手作業で追跡するには数日かかります..

注: CLR サポートなしでプロジェクトをコンパイルしていますが、これらはまだ検出可能であるようです。

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

sdl - Visual C++ 2012 で新しいプロジェクトの SDL を無効にするにはどうすればよいですか?

入力チェックが不要な宿題プロジェクトに Visual C++ を使用しているため、プロジェクト プロパティで毎回SDLscanfを無効にして. このデフォルト設定を変更する方法はありますか?