2011-02-04 7 views
3

可能性の重複:私はスタイルが悪くなり、C/C++(主にC、上ですでにかなり長い時間のために開発された
The Definitive C++ Book Guide and List++スタイル

)。だから、私はそれを使う方法を知っています。しかし、かなり多くの場合、私はこのようなスタイルの決定に固執しました: - ここでエラーコードを返すか、例外をスローするか、パラメータ でエラーを返しますか? など。

解決方法はありません。しかし、彼らのそれぞれには、私が知っている最も重要なことに私が知らない短所と賛否両論があります。

全体的なC++開発スタイル、コーディングの実践などについては、読んでみるのがとてもうれしいです。何がお勧めですか?

+0

「質問」は、書籍を「スタイル」として分類していないため、重複していません。 –

+1

そのリストはこの質問に答えますが、私はこれを複写してはいけません(それは質問でもありません...) – 6502

+0

エラーコードを返すか例外をスローするかは、スタイル*。 –

答えて

3

は、ここでC++で本当に良いの本のリストです:

The Definitive C++ Book Guide and List

はあなたのあたりとしてそれらのいくつかを読みますレベル。それはあなたのコーディングスタイルを改善するでしょう!

私は個人的にあなたが読むことをお勧めします:ハーブサッターによって

  • 効果的なC++ シリーズ C++スコット・マイヤーズによって
  • 優れたC++ シリーズ

優れたC++例外セーフな議論コードの詳細。この本を読んだ後、私はクラスとインタフェースの例外安全性の設計方法を学びました。強くお勧めします!

+3

そして、より優れたC++、Effective STL、およびその他の例外的なC++シリーズを読んでください。 –

+0

マイヤーズのものは+1、例外的なC++は-1です。IMOはそれほど興味深いものではありません(特にスタイルについて)。 – 6502

+0

@ 6502:私は同意しません。私はそれがExceptional C++であり、例外的に安全なコードについて深く説明していると思います。この本を読んだ後、私はクラスとインターフェイスの例外のデザイン効果を学びました! – Nawaz

1

これは古い本ですが、私はマイクロソフトの「コードコンプリート」の大ファンです。それは、私があなたが記述したもののようなデザインの選択のいくつかについて考えるのを助けました。彼らは、自身をデバッグするのに役立つコードを設計する戦略を提唱しています。次

if(1 = nCheck) { 
    // Now the compiler will catch the assignment as an error 
} 

ようなステートメントは、あなたのコードを引くことであなたを助ける必要がある場合は、あなたを書くのが習慣に取得する場合

非常に初歩的な例では、if文

if(nCheck = 1) { 
    // will always do this because nCheck was assigned 0 
} 

に変数のテストですほとんどの簡単な構文バグ。これはちょうど氷山の先端です。この本には、マイクロソフトが長年にわたって使用してきた巧妙な実践の例がたくさんあります。

2

特に1つの本が飛び出します。C++のコーディング標準。この本は少し疑わしい/役に立たないアイデア(メンバーのためのpostfix _のような)を推奨しますが、ほとんどは非常に堅実です。

次のスタイルの重要なものは、Sutterの "Exceptional"ブックです。それらについての良いことは、C++が重要な領域をカバーしているということです。ここでは、コードを例外から保護する方法について説明し、コーディングの実践における例外の影響を詳細に説明します。

マイヤーズの本も良いですが、少し古いです。赤い本はより重要なIMHOです。

よく見落とされる別の日付の本は、Generic ProgrammingとSTLです。これはほぼ標準ではありますが、STLのやり方について議論しています。これはC++開発者にとって重要なことです。タグをつけたコードを少し表示すると、驚くべき人たちはいつも驚いています。より良い理解のC++とスタイルのために、私は

どちらも "読みやすい" ですクラインからマイヤーズ

  • C++よくある質問(書籍)から

    1. 効果的なC++シリーズをお勧めしますについては

  • 0

    小さな丸薬のおかげで