SYSKEN Advent Calendar 2015の19日目の記事です。この記事はきっと遅刻します、ごめんなさい。
春に復学したと思ったら、気付いたら消えてて秋から大阪の専門学校に通っている、OBになってしまったやしへいです。
それはそうと、皆さん、VisualStudio使ってますか? 僕はVisualStudioが無いともう生きてけないぐらいには毎日使っています。
そんな訳で今日は知っておくと役立つかもしれない、VisualStudioのTipsを紹介します。
注意として、VisualStudio Community 2013で使える機能の範囲内で紹介するので、別のバージョンのVisualStudioを使ってる場合は無い機能もあるかもです。
1. 行番号表示
標準では行番号が表示されないので、もし表示してなければ表示しましょう。
メニューバーから「ツール」→「オプション」→「テキストエディター」→「すべての言語」にて「行番号」にチェックを付けます。
2. フォント変更
プログラミングにおいて長時間見ることになるフォントはとても大事です。標準のMSゴシックではつらいものがあるので、プログラミングに適したフォントに変更しましょう。
オプション画面から「環境」→「フォントおよび色」にて「フォント」を「Consolas」に設定します。
ConsolasはMSが作ったフォントで、Vista以降なら入ってます。Windowsでプログラミングするときは、このフォントで良いやって思えるぐらいには完成度が高いフォントなので是非使いましょう。
3. スクロールバーを見やすく
Sublime Textなどを使っている人には馴染みがある、あのスクロールバーはVisualStudioでも出せます。
オプション画面から「テキストエディター」→「すべての言語」→「スクロールバー」にて「垂直スクロールバーでのマップモードの使用」を選択。また、「ソースの概要」にて幅を設定出来ます。
設定し終えると例のスクロールバーになります。
4. デバッグ機能
IDEを折角使うのですから、デバッグ機能は使いましょう。バグと闘う際、VisualStudioのデバッガーは大きな力になります。
デバッグを行う際、まずは怪しいと思う部分にブレークポイントを置きます。ブレークポイントは指定の行でF9を押すか、行頭をクリックすることで設置出来ます。
次にF5でデバッグ実行をします、するとブレークポイントを置いた部分でプログラムが一時停止します。
その状態で下にあるローカルウィンドウを確認します。ここでスコープ内の各変数の状態を確認することが出来ます。値は編集して変更することも出来ます。
また、バグが起こるタイミングを見つける為に、一行ずつ処理を進めたい場合もあると思います。
一時停止した状態から一定の処理だけ進める方法は幾つかあります。
コンティニュー(F5)は文字通りもう一回実行します、ブレークポイントが有効な場合またそこで止まります、ゲームだとフレーム毎の処理を確認するのに使えます。
ステップイン(F11)は次の行まで実行します、また何らかの関数を呼び出していたらその中に入っていきます、間違えて関数内に入った場合は、ステップアウト(Shift+F11)で抜けられます。
ステップオーバー(F10)は関数を実行しては次の行に行きます。関数内に入ることは無いので、こちらの方が大雑把にプログラムの流れを確認する際には使い勝手が良いです。
5. パフォーマンスのプロファイリング
作ったゲームが何故か重い場合、大抵の場合何らかのボトルネックが発生している場合が多いです。ボトルネックを探す際に役立つのが、VisualStudioのプロファイリングツールです。
まずは、ビルド構成を「Relese」に設定します。次にメニューから「分析」→「パフォーマンスと診断」にて「パフォーマンスウィザード」を選択し「開始」をクリック。次の画面で「CPUサンプリング」を選択し「完了」をクリック。その後暫くプログラムを実行した後、終了します。
その後表示されるレポートで、「ホットパス」に大体のボトルネックが表示されると思われます。それらをクリックすると下のようにボトルネックが可視化されます。
ちなみにこの場合は、autoに&を付け忘れてた為、余計なコピーコストがかかっていたのがボトルネックの原因でした。(そもそもコピーコンストラクタが発生しないようにすべきでしたが)
MSDNでも詳細な解説がされています。パフォーマンス プロファイリングのビギナーズ ガイド
6. Git管理
VisualStudioのプロジェクトをGit管理する際、注意する点が有ります。.gitignoreについてです。
VisualStudioのプロジェクトは、そのままGit管理しようと思うと、かなりまずいです。pdbとかexeとかコードに関係無いものまで沢山あるからです。VisualStudio用の.gitignoreのテンプレートがあるのでそれを使いましょう。また、VS2013以降はプロジェクトを作成する際、「新しいGitリポジトリを作成」にチェックを入れれば自動的に、テンプレートの.gitignoreと.gitattributeを追加した状態のリポジトリを作ってくれます。
7. sdfファイルの保存場所を変更
DropBox上でVisualStudioのプロジェクトを保存することが良くあるのですが、その際困るのがやたらと大きいsdfファイルです。平気で100MBとか持っていくので、ローカルに保存したいです。
オプション画面から「テキスト エディター」→「C/C++」→「詳細」にて「フォールバック位置」という項目があります。「常にフォールバック位置を使用」をTrueに、「フォールバック位置」をお好みの場所に設定すればokです。
8. 便利なキーボードショートカット
インテリセンス関係
- Ctrl + Space
- インテリセンス呼び出し
- Ctrl + Shift + Space
- 関数引数を表示
VisualStudioのインテリセンスはとても強力なので使わないと損です。ショートカットを使うことで何時でも呼び出すことが出来ます。
コメントアウト
- Ctrl + K → Ctrl + C
- 選択部分をコメントアウト
- Ctrl + K → Ctrl + U
- 選択部分のコメントアウトを解除
インデントを直す
- Ctrl + K → Ctrl + D
ファイル全体のインデントを自動的に直してくれます。
定義を参照
- F12
- 定義に飛ぶ
- Alt + F12
- 定義をその場で表示する
ライブラリのヘッダとか眺めたいときに便利です。
ビルドを中止
- Ctrl + Break(Pause)
ビルド走らせた後に、あっ間違えてた!って時などに。
9. VsVim
Vimmerの方には、言うまでもなくVsVimを。VsVimの完成度はかなり高いです。本家Vimの各コマンドが思いつく限り全て使えます。
10. VS2015でC++がもっと扱いやすく
VS2015ではC++のリファクタリング機能が幾つか追加されています。詳しくはVSの開発ブログにて書かれてるのでそちらを参照してください。他にもC++11/14への対応が着々と進んでいるのも楽しみですね。
All about C++ Refactoring in Visual Studio 2015 Preview
というわけで皆さん良いVisualStudioライフを!
コメントを残す