Announce

PukiWiki contents have been moved into SONOTS Plugin (20070703)

VisualStudio.Net

Visual Studio .Net の使い方メモ

Table of Contents

ショートカットキー

ウィンドウ操作

Ctrl + Alt + V,A自動変数ウィンドウを表示する。
Ctrl + Alt + Aコマンドウィンドウを表示する。
Ctrl + Alt + Bブレークポイントウィンドウを表示する。
Ctrl + Alt + Cコールスタックウィンドウを表示する。
Ctrl + Alt + Hスレッドウィンドウを表示する。
Ctrl + ALt + Iイミディエイトウィンドウを表示する。
Ctrl + Alt + Lソリューションウィンドウを表示する。
Ctrl + Alt + O出力ウィンドウを表示する。
Ctrl + Alt + Vローカル変数ウィンドウを表示する。
Ctrl + Alt + Wウォッチウィンドウを表示する。
Ctrl + Shift + Cクラスビューを表示する。
Ctrl + K, Wブックマークウィンドウを表示する。
Ctrl + K, Hタスクリストを表示する。
Ctrl + \, Dコード定義ウィンドウを表示する。
Ctrl + \, Eエラーウィンドウを表示する。
Ctrl + \, Tタスク一覧ウィンドウを表示する。
Alt + Enterプロパティウィンドウを表示する。
Ctrl + F4現在のドキュメントを閉じる。

ビルド操作

F5デバッグ開始
Ctrl + F5デバッグなしで開始
Ctrl + F7コンパイルする。
Ctrl + Shift + Bソリューションをビルドする。
Ctrl + Breakビルドを中止する。

デバッグ操作

F10ステップオーバーまたは、プログラム先頭からデバッグ開始
Ctrl + F10カーソル位置までデバッグ実行
F11ステップイン
Shift + F11ステップアウト
Ctrl + B新しいブレークポイントを作る。
Ctrl + Alt + Qクイックウォッチを表示する。
Shift + F9クイックウォッチを表示する。
Ctrl + Alt + E例外ウィンドウを表示(どの例外が起きたときにとめるかを設定)
Ctrl + F11逆アセンブル表示にする。

検索、置換

Ctrl+F検索
Ctrl+H置換
Ctrl+/検索ボックスに移動
Ctrl+Iインクリメンタル検索

編集操作

F12定義位置に移動する。
Ctrl + F12宣言位置に移動する。
Ctrl + K,K現在位置をブックマークする/解除する
Ctrl + Shift + K,N次のブックマークに移動する。
Ctrl + Shift + K,P前のブックマークに移動する。
Ctrl+]対応する {} に移動
Ctrl+K, Ctrl+Lクイック印と
Ctrl+E, F or Ctrl+K, Fインデントする
Ctrl+E, C or Ctrl+K, Cコメントアウト
Ctrl+E, U or Ctrl+K, Uコメントアウト解除
Ctrl + R,R名前の変更
Ctrl + R,Eカプセル化
Ctrl + -
    表示戻る (画面移動前の位置に戻ります)
Ctrl + Shift + -
    表示次に進む (画面移動後の位置に進みます)
Ctrl + F10
    カーソルの位置までデバッグ
Ctrl + M 、Ctrl + M
    アウトラインの展開縮小
Ctrl + L
    行の切り取り
Shift + Alt + L (Shift+Delete)
    行削除
F12
    定義へ移動
Shift+F12
    参照へジャンプ 
Ctrl + F2	ブックマーク設定
Ctrl + -	表示戻る (画面移動前の位置に戻ります)
Ctrl + Shift + -	表示次に進む (画面移動後の位置に進みます)
Ctrl + Del 	単語の最後まで削除 (現在のカーソル位置から)
Ctrl + BackSpace	単語の最初まで削除 (現在のカーソル位置から)
Ctrl + Tab	次のドキュメントウィンドウ
Ctrl + F6	次のドキュメントウィンドウ
Ctrl + Shift + Tab	前のドキュメントウィンドウ
Ctrl + F4	ドキュメントウィンドウを閉じる
Ctrl + F10	カーソルの位置までデバッグ
Ctrl + Shift + F9	全てのブレークポイントを解除
Ctrl + B	ブレークポイントの作成
Ctrl + Shift + F10	次のステートメントの設定
Ctrl + Shift + F12	次のタスク
Ctrl + M ,Ctrl + M	アウトラインの展開縮小
Ctrl + I	インクリメンタル検索
Ctrl + ]	括弧に移動
Ctrl + R, Ctrl + W 	スペースを表示
Ctrl + K, Ctrl + C	選択範囲のコメント
Ctrl + K, Ctrl + U	選択範囲のコメント解除
Ctrl + Shift + V	クリップボードリングの切り替え
Ctrl+ R、Ctrl + R 	コードを右端で折り返し
Ctrl + L 	行の切り取り
Ctrl + PageUp 	編集画面の上端移動
Ctrl + PageDown 	編集画面の下端移動
Shift + Alt + L (Shift+Delete)	行削除
Alt+ Shift+Enter	フルスクリーンモード
Alt+ 左キードラッグ	ブロック選択
F12	定義へ移動
Shift+F12	参照へジャンプ

自己設定

シュートカットキーの確認、設定は Tools > Options > Keyboard

なぜか Ctrl+Shift+B,N,M が利かない…

Build.BuildSelection を F7 に。Assign 押してから OK

keyboard mapping scheme を Visual C++ 6 にすると、BuildSolution が F7 . 昔の設定

設定

デバグ引数

プロジェクト > プロパティ > デバッグ > コマンド引数

リダイレクトも使用可

外部ファイルに書いておけないのか?

タブサイズ

Tools -> Options -> Text Editor -> C/C++ -> Tabs

改行コード/文字コード

File > Advanced Save Options

Change to 'UTF-8 with signatures' and LF

warning C4996: 'sprintf' was declared deprecated 除去

Right click Project => Properties => C/C++ => Advanced => Disable Specific Warnings => Enter 4996

単に、コンパイル時のワーニングを制御するには、以下のようにします。

#pragma warning(disable: 4996)?// C4996のワーニングを無効
// ここでインクルード等のコードを記述します。
#pragma warning(default: 4996)?// C4996のワーニングを有効 

いくつものワーニングを抑制したい場合には、以下のようにすると便利です。

#pragma warning(push)
#pragma warning(disable: 4192)
#pragma warning(disable: 4278)
// ここでインクルード等のコードを記述します。
#pragma warning(pop)
#ifdef _MSC_VER
#endif

と併用するとよさそう

#define _CRT_SECURE_NO_DEPRECATE 1

でも良いみたい

全ビルドしない

Options > Projects and Solutions > Build and Run > Check 'Only build startup projects and dependencies on run'

小技

よく使うライブラリをプロジェクトを作るたびにリンカに追加したくない。

(VCインスコフォルダ)\VC\VCProjectDefaults\CoreWin.vsprops ここに自分がよく使うlibを追加しとけばWin32を選ぶと自動的にlibが追加されるようになる。(このパスは Visual Studio 2005)

1プロジェクトで main をたくさん作りたい

main をもつソース右クリック→プロパティ→Excluded From Build (Yes) にちくちくやるしかない? これをやると exe の名前はプロジェクトで統一だし、あまりうれしくない。

main をたくさん作りたいのは、共通のヘッダ、オブジェクトを使いたいからで、 ほかの方法があってほしい。

  • cppUnit
    To compile with .NET 2003
    1. Open examples\examples.dsw
    2. When asked convert all to .NET
    3. Right click on CppUnitTestApp in Class View and make it the active project
    4. Right click on cppunit in Class View and goto Properties. Then select "All configurations" and goto the Post-Build Event and add the following:
    mkdir ..\..\lib
    copy "$(TargetPath)" ..\..\lib\"$(TargetName)".dll
    copy "$(TargetDir)$(TargetName).lib" ..\..\lib\"$(TargetName)".lib
    
    This should then build okay with cppunit-1.10.2