2

Qt4を使用したC++GUIプログラミングを購入したばかりですが、この本のコードサンプルを読んだ後、C++に関する知識が不完全であることに気付き始めています。私は2年前にオンラインチュートリアルとダウンロードしたいくつかの電子ブックからC++を学びましたが、これらのリソースはどれも十分ではなかったことがわかりました。それ以来、私はその言語に触れず、代わりにPythonを使用しています。

今、私は高度なトピックをカバーするC ++に関する優れた本を購入することを考えています。私が念頭に置いているのは、ブルース・エッケルのC ++での思考(両方の巻)です。ウェブ上で無料で入手できることは知っていますが、ノートパソコンの画面で本を読むのは本当に我慢できません。

C ++ 0xは間もなく発売される可能性があるので、先に進んでこれらの本に現金を使うのは賢明ですか?C ++ 0xは下位互換性を壊しますか?ボリューム2は、マルチスレッド、テンプレートなどの機能をカバーしています。これらの機能のいずれかがC ++ 0xで大幅に変更されますか?

4

6 に答える 6

11

私は C++0x のために息を止めません。この10年の終わりまでにそれが出てくるとは思えません。たとえそれが出たとしても、コンパイラがそれを実装するのにおそらく1年かそこらを数えるべきです. 今すぐ基礎を学んでおけば、標準が公開されたときに、ほとんどの新機能を比較的簡単に習得できるはずです。標準化委員会は、下位互換性を維持するための努力で知られています。

私は好奇心から、時々標準の進化を個人的にチェックしています。Herb Sutter のブログ フィードを購読して、Standard の更新を探してください。

私の個人的なお気に入りの高度な C++ の本は、Bjarne Stroustrup の The C++ Programming Language, 3e です。これは、言語と STL の詳細に関して、私が最も多くを学んだと思う唯一の C++ の本です。Scott Meyers の本も、多くのことを明らかにするのに役立ちました。Meyers は非常に読みやすい言語 (英語だと思います) で書いており、Meyers の本からアイテム全体を読んだ後、Stroustrup の本で同じ情報が 1 文程度に凝縮されているのを見つけることがよくあります。つまり、マイヤーズの本は、興味深い詳細に注意を向けさせるのに非常に役立ちます。

スレッド化に期待する変更については、この目的のために標準に 2 つの新しいライブラリが追加されると思います。コンセプトはさらに大きな変更が予定されており、テンプレートに多少関連しています。これまでは STL に概念がありましたが、これらは規約でした。アルゴリズムは、テンプレートに渡す型について仮定を行います。規則により、正しい「型の型」を渡すことがわかります。これは、私たち全員が知っていて「大好き」な STL テンプレート エラーである、ひどくエラー メッセージを暗示していました。コンセプトはこれらを解決するのに役立ちます。言語には他にも改善点 (複雑さ) があります。Herb Sutter はそれらについてよく話します。

于 2008-12-28T09:45:58.463 に答える
7

その本を買うのは確かに賢明です。C ++ 1xは、以前のコードでほとんど壊れません。学習するほとんどすべてが次のC++でも可能であり、C++1xがどの機能を導入するのかという必要性を理解するのに大いに役立ちます。たとえば、なぜ可変個引数テンプレートが含まれるのでしょうか。また、なぜそれらの概念があるのでしょうか。

于 2008-12-28T09:21:54.470 に答える
1

一部の機能で下位互換性が失われている場合でも、大部分は依然として有用であるはずです。

さらに、C++Oxに関する最初の本は最高のものではないかもしれません。

私はC++Oxに関する本よりもC++に関する非常に優れた本を好みます。

于 2008-12-28T09:08:30.567 に答える
1

私は間違いなく本を買いに行きます

  1. エッケルの本は本当に良い本で、本当にお勧めです。
  2. コンパイラが C++0x で導入された新機能に追いつくには数年かかるでしょう (テンプレート サポートがどうだったか見てください!)
  3. プロジェクトがそれらを使い始めるにはさらに何年もかかるでしょう
  4. 最後に、この言語の新しいリリースで導入された 3 つの変更点について詳しくはわかりませんが、C++ 委員会は下位互換性に関して常に非常に保守的でした。
于 2008-12-28T09:33:46.163 に答える
1

他の本に加えて、Bjarne Stroustrup の本「The C++ Programming Language (Third Edition and Special Edition)」http://www.research.att.com/~bs/3rd.htmlを入手することをお勧めします。複数の本を買う余裕があれば、興味があるかもしれません。1冊だけ買う余裕があり、(あなたが持っているように)基本をマスターしているなら、私はおそらくStroustrupの本に向かって学ぶでしょう. 本人から事実を聞き出さないわけにはいきません。

興味がある場合は、 http: //www.research.att.com/~bs/C++0xFAQ.htmlで C++0x の開発状況を追跡でき ます。前にコメントしたように、私があなただったら息を止めません。

于 2008-12-28T13:54:44.187 に答える
0

Safari Books Onlineのようなサイトを試して、技術書やプログラミング書を最新の状態に保つことができます。私は過去にRubyとRubyonRailsに関連する本を何冊か購入しましたが、それらの本は廃止されたため、今ではあまり役に立ちません。

于 2008-12-28T09:12:43.413 に答える