[解決済み] 効果的なC++はまだ有効か?
質問
私が見たところでは この投稿 を読み始めることにしました。 効果的な C++ .
しかし、C++11 のために多くの新機能があり、グッドプラクティスのいくつかが変更された今、それが実際に良いアイデアかどうかはわかりません。C++11 の登場により、Effective C++ に含まれているアドバイスのどれかが非推奨になったのでしょうか。 もしそうなら、どのトピックを避けるべきでしょうか?
どのように解決するのですか?
スコット・マイヤーズ自身は、このように語っています。 自身のブログで
<ブロッククオート
この『Effective C++0x』以前の版における情報やアドバイスが、今でも適切かどうか疑問に思われるかもしれません。
この『Effective C++』の C++0x 以前の版に含まれる情報やアドバイスが、今も適切なものであるかどうか疑問に思われるかもしれません。私は喜んで
報告できることを嬉しく思います。実際、驚くほどそうなのです。私は、2年近くを
C++0xの詳細に浸りながら2年近くを過ごした私は、C++0xを念頭に置いて本書の目次を見直すと、少しばかり唸ることになるのではないかと思っていました。
この本の目次をC++0xを念頭に置いて見直すと、少しばかり唸ることになります。確かに
この本の目次をC++0xを意識して見直すと、ちょっと唸ってしまうような項目もある。しかし、私が見つけた助言は
それは C++0xの開発者は、const、enum、inlineの方が
#defines
(項目 2) を好むべきでしょうか?そうすべきです。デストラクタから例外が出るのを防ぐべきでしょうか (項目 8)。
防ぐべきでしょうか (項目 8)?もちろんです。オブジェクトを使って
リソースを管理するべきか?データメンバを非公開にするべきか? 仮想関数の代替を検討する
仮想関数に代わるものを検討すべきでしょうか?パラメータに依存しないコードを
テンプレートからパラメータに依存しないコードを除外しますか?(項目13, 22, 35, 44.) はい、はい、はい、はい! 私の目標は
Effective C++の目次は、この本のアドバイスを要約したものであることが私の目標でした。
そして、その要約は、「C++0x」の開発にも「C++0x」の開発にも同じように適用できます。
C++0xの開発にも、「従来の」C++の開発と同様に適用できます。C++0xはより大きな言語です。
C++0xはより大きな言語であり、ある意味では異なる言語でもありますが、「古い」C++を有効に活用するための核となる技術は、C++0xの開発にも適用できます。
C++0xはより大きな言語であり、ある意味では異なる言語ですが、「古い」C++を効果的に使用するための核となる技術は
C++0xを効果的に使用するための中核となる技術です。
これは、この Effective C++ が C++0x と完全に一致するという意味ではありません。 C++0x と完全に一致するということではありません。この本は、C++0xの新機能については触れていないので、その機能を有効に活用するための項目が欠けています。 を有効に活用するための項目が欠けています。C++0x化された C++0x化されたEffective C++では、移動操作に特化した項目が必ずあるはずです。 また、並行処理APIを有効に活用するための章も用意されているはずです。このような本には、例えば、自動変数、範囲ベースのforループ、クラス内のデフォルトの初期化子、そして時折の変種テンプレートの使用など、さまざまな例も含まれていることでしょう。この本が C++0x のサポートに欠けているとすれば、その誤りは省略によるもので、委託によるものではありません。
アップデイト : 新しいタイトル 効果的なModern C++ は、2014年11月より、下記より販売しております。 オライリー と アマゾン (などなど、ググればいくらでも出てきます)。
関連
-
[解決済み】 unsigned int vs. size_t
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】文字列関数で'char const*'のインスタンスを投げた後に呼び出されるterminate [閉店].
-
[解決済み】C++エラー:の初期化に一致するコンストラクタがありません。
-
[解決済み】「std::operator」で「operator<<」にマッチするものがない。
-
[解決済み】システムが指定されたファイルを見つけられませんでした。
-
[解決済み] 警告:暗黙の定数変換でのオーバーフロー
-
[解決済み] 配列のベクトルを扱う正しい方法
-
[解決済み] std::vectorのイテレータのインデックスを取得する最も効果的な方法は何ですか?
-
[解決済み】画像処理。コカ・コーラ缶」認識のためのアルゴリズム改良
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] テスト
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み] エラーが発生する。ISO C++は型を持たない宣言を禁じています。
-
[解決済み】'cout'は型名ではない
-
[解決済み】C++プログラムでのコンソールの一時停止
-
[解決済み】c++でstd::vectorを返すための効率的な方法
-
[解決済み】指定範囲内の乱数で配列を埋める(C++)
-
[解決済み】1つ以上の多重定義されたシンボルが見つかる
-
[解決済み】標準ライブラリにstd::endlに相当するタブはあるか?
-
[解決済み】なぜ、サイズ8の初期化されていない値を使用するのでしょうか?