• ベストアンサー

C++導入または入門書として

大学でC言語をやっているのですが、せっかくなのでC++(VC++)も勉強したいと思っているのですが(実用ではCよりVC++ようなので) Cはある程度分かっていることを前提にして、初期段階で読むのではこのサイト等を参考にすると 独習C++ Visual C++2005 シリーズ 林 晴比古 明解 C++ 柴田 望洋 C++プログラミング シリーズ ハーベイ M. ダイテル 等あるようですが 個人的にCを林さんのでやったので使いたいとは思っているのですがあまり評価がよくないようなのでどうしようか迷っています。 他の本もあわせてご推薦いただければありがたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • Oh-Orange
  • ベストアンサー率63% (854/1345)
回答No.3

★私も林さんの本で C/C++ を入門しました。 >個人的にCを林さんのでやったので使いたいとは思っているのですが >あまり評価がよくないようなのでどうしようか迷っています。  ↑  入門なら問題ないです。  この本で C++ を入門してもっと詳しい本を次のステップとして読めば良いです。  林さんの本はあまり詳しくはないため C++ の標準テンプレート(STL)の解説書は  別の本に頼るべきです。例えば次の本などを参考にして下さい。  (1)http://www.amazon.co.jp/dp/4894714329/→『STL―標準テンプレートライブラリによるC++プログラミング 第2版』  (2)http://www.amazon.co.jp/dp/477412401X/→『C++標準ライブラリの使い方 完全ガイド』  また林さんの C++ 入門の次のステップでは下の本はどうでしょうか。  (1)http://www.amazon.co.jp/dp/4774115738/→『C++クラスと継承完全制覇 (標準プログラマーズライブラリ)』  あるいは次の VC++ のシリーズで学ぶとか。  (1)http://www.amazon.co.jp/dp/4881358219/→『Visual C++〈1〉はじめてのWindowsプログラミング』  (2)http://www.amazon.co.jp/dp/4881358227/→『Visual C++〈2〉はじめてのオブジェクト指向プログラミング』  (3)http://www.amazon.co.jp/dp/4881358235/→『Visual C++〈3〉はじめてのMFCプログラミング』  その他にも VC++ では C++/CLI の中間言語でもアプリケーションを作成できます。  この場合は次の本を参考にして下さい。  (1)http://www.amazon.co.jp/dp/4797336277/→『実践C++/CLI 極めるための基礎と実用テクニック』  個人的には C++/CLI よりは C# を使いたいです。  最近は C# も人気が出てきたようです。 ・上記のを参考に本屋でリサーチして下さい。  C++入門なので林さんので十分な気がします。  C++言語の機能を一通り知りたいなら林さんの本をお勧めします。  分かりやすかったから。でも STL の解説はないし、詳しくないので別の本が必ず必要になります。 ・以上。ちなみに私が買った林さんのC++入門は古すぎてもう買えないようです。シニアとか(上)(下)に増えていますね。

参考URL:
http://www.amazon.co.jp/dp/4797316608/,http://www.amazon.co.jp/dp/4797316616/
tk516ncb
質問者

お礼

すごいです。丁寧に大変たくさんありがとうございます。 林さんの本を仕上げた後STL系の本やクラスの本をやってみようかとと思います。

その他の回答 (7)

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.8

>調べているとMFCとかSTLとかCLRとかなにやらよく分からないものが出てきて、ネットのIT辞典を見てもいまいちぴんと来なかったのですが MFCは、説明したとおりWindowsAPIをC++でラップしたものです。 STLは、C++のテンプレート機能を応用して作られた標準ライブラリです。strcpyとかはC言語で作られた標準ライブラリですが比べると遥かに高度な機能を持つライブラリになっています。 CLR(Common Language Runtime)は、VB、C#、C++/CLIを共通のランタイムライブラリで走らせる仕組みで.NET Frameworkで動きます。 http://ja.wikipedia.org/wiki/%E5%85%B1%E9%80%9A%E8%A8%80%E8%AA%9E%E3%83%A9%E3%83%B3%E3%82%BF%E3%82%A4%E3%83%A0 C++/CLIは、C++と言っても特殊で文法やライブラリで大きく違う部分がありますし、VC++2005の本の中にこれを中心に解説している本がありますので買う場合はよく確認してください。 http://ja.wikipedia.org/wiki/C%2B%2B/CLI 場合によって、C++/CLIをマネージドと呼び従来のC++をアンマネージドと呼びます。 C++/CLIを使うぐらいなら、C#に移ったほうが私は良いと思っています。ただ、今後のプロの動向として使う言語がC++かC++/CLIかC#を何を選ぶかは不透明ですね。

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.7

これですか? >#6 美しいC++プログラミング見本帖: 本: 柏原 正三 http://amazon.jp/dp/479810776X 初級~中級だとお薦めはあげられるんだけど、 正直な話入門書でこれ、と自信を持って勧められるものはないです。

  • crew21
  • ベストアンサー率26% (58/222)
回答No.6

たくさんあるから、あなたが挙げた中からお答えすると、 ・明解 C++ 柴田 望洋 はいいと思うよ。私がC++習得の際に実際に使い、今でもバイブル的に使っていて、本ボロボロです。 逆に、自分で読んでみてこれはNGと感じたモノは、 ・Visual C++2005 シリーズ 林 晴比古 もう論外。ナニコレ?この人の本は他にも出てるようだけど、どうしてこんなのが売れるのかマジわかりません。個人的に恨みはないけど、絶対勧めません。 それと「独習C++」も結構売れてるよね。うちの新人でも買ってる人多いけど、案外挫折か途中で放置されてる。 読んでみると、独習のうたい文句のわりには、ある程度のレベルでないと独習はできないと感た。それとクダらない例題多すぎ。 最後に、ある程度C++の勉強というか文法を学んだら、絶対オススメなのが「美しいC++プログラミング作法」(ちょっと題名違うかも。でも大きな本屋行けば、表紙が日本風の絵柄ですぐわかるよ)。 コレ絶対イイ! くどいけどC++全然知らないうちにこの本買っても無駄だからね。一通りC++勉強してから買ってね。 C++における自分の弱点が分かるし、楽しく克服できる。

tk516ncb
質問者

お礼

ありがとうございます。 林さんのはダメですか・・・ Cは分かりやすかったんですが、でもVBAの知識が結構あったので読めた部分もあったとも思います。制御文の説明なしに先に制御文を使っている部分もありました。 個人的な意見でかまわないので「Visual C++2005シリーズ」が論外な点を教えていただけないでしょうか?それを参考に別の本を回ってみたいので。 美しいC++~入門が終わったら是非読んでみようと思います。 ネットで見たらこのCバージョン(ポインタ)もあるようなので見てみます。 ちょうどポインタについて「C言語ポインタ完全制覇」をやろうかと思っていたのですがどちらがおすすめでしょうか?

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.5

#2のzwiです。 WindowsAPIの入門としてお勧めの本は、「APIで学ぶWindows徹底理解」です。 WindowsOSの基本的なことをAPIをからめて説明してくれています。 http://www.amazon.co.jp/o/ASIN/4822228266 MFCは、WindowsAPIをC++のクラスとして隠蔽(ラップ)したもので、中身自体はWindowsAPIそのものです。VisualC++と書かれている本なら大体解説があると思います。 MFCは基本的な機能は簡単に使えるんですが、気が利いた事をしようとするとWindowsAPIとC++を知らないと使いこなせない存在です。 VS2005を使っているということで注意をひとつ。VS2005はUNICODEがデフォルトで、VS2003以前と操作方法に大きな違いがあります。ですので、VS2005に対応していない本を買うと操作方法やソースコードが違ってうまく動かないということが考えられますので注意してください。それはそれでよい勉強になるんですけどね。

tk516ncb
質問者

お礼

早速ネットで注文しました。 調べているとMFCとかSTLとかCLRとかなにやらよく分からないものが出てきて、ネットのIT辞典を見てもいまいちぴんと来なかったのですが、MFCに関して MFC=API+C++だと理解しました。 ありがとうございます。

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.4

#2のzwiです。 3)MFCを含むVC++の機能を駆使してWindowsアプリが組みたい。 と考えてよいですかね。 では、有料のVisualStudioが必要となります。学生さんですので、アカデミックエディションの購入を検討してみてください。 http://www.sofmap.com/product_detail/exec/_/sku=10587575/-/gid=SW02010000 来年VisualStudio2008が発売されますが、あえてVisualStudio2005を買ったほうが本や情報が多くて助かると思います。 覚えることとしては、C++は当たり前として、WindowsAPIやMFCの知識も必要となります。C++以上に覚えることがありますからがんばりましょう!

tk516ncb
質問者

お礼

ありがとうございます。 5000円もしなかったんでCを勉強するのにVC++の環境になれるという意味でちょうど使っているところです。 その前は付録でやってましたが、 キーワードとしてはAPIやMFCを探してみます。 いっぱい覚えることがありそうですね。 がんばります。

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

どのようなプログラムを組めるようになりたいかで話が違います。 Windowsアプリを組みたいならVC++を使ったほうが良いでしょうし、勉強としてのC++ならgccでも問題ありません。 次のような道があります。どれを選びますか? (1)C++を勉強したい。 gccやBorlandC++や無料のVC++ExpressEdtionを使う。 コンソールアプリケーションをまず使いこなす。 (2)WindowsAPIだけでWindowsアプリが組みたい。 BorlandC++や無料のVC++ExpressEdtionを使う。必ずしもC++は必要ではありません。 (3)MFCを含むVC++の機能を駆使してWindowsアプリが組みたい。 有料のVisualStudioが必要。C++の知識も必要になります。 本が一番多いのは、これの入門書です。VC++とか書かれている本ですね。 (4)MS独自の文法のC++/CLIを使って.NET FRAMEWORKのアプリを組みたい。 無料のVC++ExpressEdtionが使えます。C++の文法に近いですが、微妙に違います。入門書は、さほど多くはありません。

tk516ncb
質問者

補足

作りたいプログラムとしては、将来の汎用性を考えてVC++でWindowsアプリを組みたいと考えております。

  • keibou21
  • ベストアンサー率31% (18/58)
回答No.1

各本の読み易さ、理解しやすさは個々人で違ってくるのでご自身で本屋に行って立ち読みして決めればいいかと。 #「1週間でマスターする」とか余りにもページ数が少ない本はお勧めできませんが

tk516ncb
質問者

お礼

ありがとうございます。 あまりどれでも変わりませんかぁ

関連するQ&A