プログラミングの教科書シリーズかんたん Visual C++

[表紙]かんたん Visual C++

紙版発売

A5判/544ページ

定価3,168円(本体2,880円+税10%)

ISBN 978-4-7741-4664-5

ただいま弊社在庫はございません。

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

本書は,プログラミングの教科書シリーズのVC++になります.これからVC++を学ぶ人を対象に文法知識と機能を基礎から学ぶことのできる,プログラミング学習書です。VC++のMFCに特化し,やさしい解説とわかりやすいイラストで,安心して読み進められます。この1冊があれば,MFCの一通りの機能をすべて身につけることができます。学習用途だけでなく,機能や文法を調べたいときに参照するリファレンスとしても活用可能です。基礎からわかりやすく解説した,プログラミング言語入門の決定版です。

こんな方におすすめ

  • Visual C++に興味のある方
  • MFCに興味がある方

目次

第1章 Visual C++とは

1-1 Visual C++とは

  • Visual C++の特徴
  • Visual C++はどのような場面で使えばいいのか?
  • 使用するプログラミング言語

1-2 マネージコードとアンマネージコード

  • マネージコード・アンマネージコードとは
  • マネージコードの使われ方
  • アンマネージコードの使われ方
  • マネージコードとアンマネージコードの違い

1-3 この章のまとめ

  • 章末復習問題

第2章 Visual C++プログラミングの基礎

2-1 ヘッダーファイル

  • ヘッダーファイルとは?
  • ヘッダーファイルはどのように使うの?
  • ヘッダーファイルの使い方

2-2 ポインタ

  • ポインタとは?
  • ポインタをどうして使うの?
  • ポインタはどのように使うの?
  • 参照ポインタ
  • 型変換(キャスト)とポインタ
  • Void型ポインタ
  • ポインタと関数

2-3 オブジェクト指向プログラミング

  • オブジェクト指向プログラミングとは?
  • クラスとは?
  • アクセス指定子
  • スコープ解決演算子
  • グローバルスコープ
  • クラスの継承

2-4 この章のまとめ

  • 章末復習問題

第3章 Visual C++特有の言語仕様

3-1 Visual C++特有のデータ型

  • Visual C++特有のデータ型について
  • Visual C++でよく使われるデータ型

3-2 文字セット

  • アプリケーションの文字コード
  • 文字コードと_Tマクロ

3-3 マネージとアンマネージコードの混在

  • コードを混在させて作成する利点

3-4 この章のまとめ

  • 章末復習問題

第4章 プロジェクトの作成

4-1 MFCプロジェクトの作成

  • MFCとは?
  • Visual Studioの起動
  • Visual Studioでプロジェクトを作成する
  • ダイアログベースのMFCアプリケーションの作成

4-2 作成されたプロジェクトとファイル

  • 作成されたプロジェクト
  • 作成されたファイルの関係
  • プロジェクトの保存

4-3 プロジェクトのビルドと実行

  • プロジェクトのビルド
  • 実行してみよう

4-4 この章のまとめ

  • 章末復習問題

第5章 コードウィザード

5-1 クラスウィザード

  • コードウィザードとは?
  • クラスを追加するには?
  • 追加されたファイルを見てみよう

5-2 メンバー関数の追加

  • メンバー関数を追加するには?
  • 追加されたコードを見てみよう

5-3 メンバー変数の追加

  • メンバー変数を追加するには?
  • 追加されたコードを見てみよう

5-4 この章のまとめ

  • 章末復習問題

第6章 デバッグ

6-1 ビルドエラーの発生

  • ビルドエラーが発生したら?
  • 出力ウィンドウの操作
  • コラム MSDNライブラリとは?

6-2 プログラムの不具合箇所を特定する

  • ブレークポイントとは?
  • ブレークポイントの設定
  • ブレークポイントの解除
  • ステップオーバー
  • ステップイン
  • ステップアウト

6-3 変数の内容を確認する

  • 変数の内容を確認するには?
  • 自動変数ウィンドウとローカル変数ウィンドウ
  • ウォッチウィンドウとDataTips

6-4 この章のまとめ

  • 章末復習問題

第7章 MFCの基本的なクラス

7-1 文字列を操作する

  • CStringクラス
  • 文字列を代入する
  • 文字列を連結する
  • コラム TRACEマクロ
  • 文字を比較する
  • 文字を挿入・削除する
  • 関数にCStringクラスを使用する

7-2 ファイルを操作する

  • CFileクラス
  • ファイルのオープンとクローズ
  • ファイルを読み取る
  • ファイルに書き込む
  • ファイルの大きさを取得する
  • ファイルを削除する
  • ファイル名を変更する
  • ファイルのステータスを取得する

7-3 日付や時刻を扱う

  • 日付や時刻を扱うには?
  • 日付と時刻を設定する
  • インスタンスに設定されている日付と時刻を取得する
  • 日付と時刻を比較する
  • 日付と時刻の加減算を行う
  • コラム TRACEマクロで全角文字を出力する

7-4 この章のまとめ

  • 章末復習問題

第8章 コモンコントロール

8-1 スタティックテキスト・ボタン・エディットコントロール

  • スタティックテキスト・ボタン・エディットコントロールとは?
  • ダイアログ画面を編集する
  • コントロールのテキストを編集する
  • メッセージハンドラーとは?
  • エディットボックスに入力されたテキストを取得する
  • メッセージボックスを表示する
  • 動かしてみよう

8-2 チェックボックス・ラジオボタン・グループボックスコントロール

  • チェックボックス・ラジオボタン・グループボックスコントロールとは?
  • ダイアログ画面を編集する
  • チェックボックスとラジオボタンの状態を取得する
  • コラム BOOL型とbool型
  • 実行してみよう

8-3 リストボックス・コンボボックスコントロール

  • リストボックス・コンボボックスコントロールとは?
  • ダイアログ画面を編集する
  • コンボボックスとリストボックスの状態を取得する
  • 実行してみよう

8-4 スライダ・スピンコントロール

  • スライダ・スピンコントロールとは?
  • ダイアログ画面を編集する
  • コラム スピンコントロールの配置
  • スピンコントロールとスライダコントロールの状態を取得する
  • 実行してみよう

8-5 日時指定・月間予定表コントロール

  • 日時指定・月間予定表コントロールとは?
  • ダイアログ画面を編集する
  • 日時指定,月間予定表コントロールの状態を取得する
  • 実行してみよう

8-6 プログレスバーコントロール

  • プログレスバーコントロールとは?
  • ダイアログ画面を編集する
  • プログレスバーコントロールを制御する
  • 実行してみよう

8-7 IPアドレスコントロール

  • IPアドレスコントロールとは?
  • ダイアログ画面を編集する
  • IPアドレスコントロールを制御する
  • 実行してみよう

8-8 この章のまとめ

  • 章末復習問題

第9章 デバイスコンテキスト

9-1 CDCクラス

  • デバイスコンテキストとは?
  • CDCクラスとは?
  • 描画を行うには?

9-2 直線を描画する

  • 直線を描画するには?
  • 直線を描画してみよう
  • 実行してみよう

9-3 図形を描画する

  • 図形を描画するには?
  • 四角形や円を描画してみよう
  • 実行してみよう

9-4 図形を塗りつぶす

  • 図形を塗りつぶすには?
  • 四角形や円を塗りつぶしてみよう
  • 実行してみよう

9-5 文字を描画する

  • 文字を描画するには?
  • コラム 構造体の初期化
  • 文字を描画してみよう
  • 実行してみよう
  • コラム 文字列の終端

9-6 画像ファイルを描画する

  • 画像ファイルを描画するには?
  • コラム オーバーロード
  • 画像ファイルを描画してみよう
  • 実行してみよう

9-7 この章のまとめ

  • 章末復習問題

第10章 MFCの仕組み

10-1 ダイアログデータエクスチェンジ

  • ダイアログデータエクスチェンジ(DDX)とは?
  • ダイアログデータエクスチェンジの仕組み

10-2 メッセージの処理

  • メッセージハンドラー
  • メッセージハンドラーの仕組み

10-3 ダイアログデータバリデーション

  • ダイアログデータバリデーションとは?
  • ダイアログデータバリデーションを使ってみよう
  • ダイアログデータバリデーションの仕組み
  • 実行してみよう
  • コラム EnterキーやESCキーを押してもダイアログが閉じないようにするには?

10-4 この章のまとめ

  • 章末復習問題

第11章 SDI/MDIアプリケーション

11-1 SDI/MDIアプリケーションとは

  • SDI/MDI
  • ドキュメント/ビューアーキテクチャ

11-2 MDIプロジェクトを作成する

  • アプリケーションウィザードでMDIプロジェクトを作成する
  • 作成されたプロジェクト

11-3 MDIで画像ファイル表示アプリケーションを作成する

  • ドキュメントクラスのプログラミング
  • ビュークラスのプログラミング
  • メインフレームウィンドウの編集
  • 実行してみよう

11-4 この章のまとめ

  • 章末復習問題

第12章 スレッド

12-1 スレッドとは

  • スレッドとは?
  • スレッドはどのようなときに使うの?

12-2 スレッドを使用する

  • スレッドを作成するには?
  • スレッドを使用しないとどうなるか?
  • スレッドを使ってみよう
  • 実行してみよう

12-3 スレッド処理の終了を知る

  • スレッドの処理が終了したことを知るには?
  • スレッドの処理終了を待つ
  • スレッドの処理終了を定期的に調べる

12-4 同期処理

  • スレッドの同期処理
  • MFCの同期クラス
  • CSemaphoreクラス
  • CMutexクラス
  • CCriticalSectionクラス
  • CEventクラス
  • コラム スレッドセーフ

12-5 この章のまとめ

  • 章末復習問題

第13章 ソケット

13-1 ソケットとは

  • ソケットとは?
  • ソケットはどのように使うの?
  • 同期型と非同期型のソケット

13-2 同期型ソケットのプログラミング

  • 同期型ソケットを作成するには
  • ソケットを使ってみよう
  • コラム Receive関数の戻り値
  • 動かしてみよう

13-3 非同期型ソケットのプログラミング

  • 非同期型ソケットを作成するには
  • CAsyncSocketクラスから派生したクラスを作成する
  • 非同期型ソケットを使ってみよう
  • 動かしてみよう

13-4 この章のまとめ

  • 章末復習問題

第14章 Windows API

14-1 iniファイルの読み書き

  • iniファイルとは?
  • iniファイルを読み込むには?
  • iniファイルに書き込むには?
  • iniファイルを読み書きしてみよう
  • 動かしてみよう
  • コラム GetLastError

14-2 名前付きパイプ

  • パイプとは?
  • 名前付きパイプを使用するには?
  • 名前付きパイプを使ってみよう
  • 動かしてみよう

14-3 共有メモリ

  • 共有メモリとは?
  • 共有メモリを使用するには?
  • 共有メモリを使ってみよう
  • 動かしてみよう

14-4 この章のまとめ

  • 章末復習問題

第15章 ダイナミックリンクライブラリ

15-1 ダイナミックリンクライブラリ

  • ダイナミックリンクライブラリ(DLL)とは?
  • ダイナミックリンクライブラリはどのように使うの?
  • MFC DLLプロジェクトの作成

15-2 DLLの作成

  • エクスポート関数
  • エクスポート関数の作成方法
  • DLLを作成する
  • コラム stdafx.hとは

15-3 DLLのリンク

  • DLLを利用するには?
  • 暗黙的なリンクと明示的なリンク
  • 暗黙的なリンクと明示的なリンクの違い
  • コラム MFCの例外処理

15-4 暗黙的なリンクを使用して,DLLを利用する

  • DLLを利用したアプリケーションの作成
  • 暗黙的なリンクを使用するには?
  • 暗黙的なリンクを使用してみよう
  • 動かしてみよう
  • コラム DLLのデバッグ

15-5 明示的なリンクを使用して,DLLを利用する

  • 明示的なリンクを使用するには?
  • 明示的なリンクを使用してみよう
  • 動かしてみよう
  • コラム DLLの検索パス

15-5 この章のまとめ

  • 章末復習問題

第16章 C++/CLIプログラミング

16-1 C++/CLIとは

  • C++/CLIとは?
  • 名前空間とは?
  • マネージコードのデータ型
  • マネージコードのクラス

16-2 マネージコードを使用する

  • マネージコードのプロジェクトを作成しよう
  • ラジオボタンとチェックボックスを使ってみよう
  • チェックボックスとラジオボタンの状態を取得してみよう
  • 実行してみよう

16-3 マネージコードからアンマネージコードを使用する

  • マネージコードからアンマネージDLLを呼び出す
  • プラットフォーム呼び出し(P/Invoke)とマーシャリング
  • プラットフォーム呼び出しを使用するには?
  • マーシャリングを使用するには?
  • プラットフォーム呼び出しを使ってみよう
  • コラム CallingConventionとは
  • 動かしてみよう

16-4 アンマネージコードとマネージコードの混在

  • アンマネージコードとマネージコードを混在させる
  • マネージコードとアンマネージコードを混在させるには?
  • マネージコードとアンマネージコードを混在させてみよう
  • 動かしてみよう
  • コラム P/InvokeとC++ Interop

16-5 この章のまとめ

  • 章末復習問題
  • 復習問題解答

著者プロフィール

堀義博(ほりよしひろ)

神奈川県在中のシステムエンジニア。現在は,株式会社日本オープンシステムズに勤務している。最近はVisual Basicを使用したクライアントアプリケーション開発が主な業務。プロジェクトリーダーとして従事しているが,その実体は設計からテストまで行う何でも屋さんとなっている。マネージコードよりもハードウェア寄りなプログラミング言語が好きで,時々は趣味の電子工作でアセンブラを書いて楽しんでいる。