- 323 名前:デフォルトの名無しさん mailto:sage [2008/05/31(土) 20:09:07 ]
- >>320 決してジョークではない
今までの流れからCプログラマ(特に組込み系)のC++に対する懸念は以下の2つと考えている。 - 生成されるコードが大きくて遅い(例えベターCとして使っても) - 暗黙の処理によって生成されるコードやリソースが予想しにくい コードの大きさと速さに関しては、ゼロオーバーヘッドルールによってCのソースコードを C++コンパイラでコンパイルしてもほぼ同じになると考えてよい。 (ただし最適化の出来が悪いとそうならないときがある) しかもC++はCとの(道理にかなった)非互換性を選択したことでCの危険なプログラムを エラーにすることができる。特にコンパイル時とリンク時の型安全の検査は有名だ。 予想しにくい件に関しては>>317のルールに従い、さらに以下のC++機能を使うとよい。 - うっかりミスの防止する機能 非先頭変数宣言、アクセス指定子、C++キャスト演算子、new演算子、参照 - プログラムを組織化し、大規模化しやすくする機能 継承、staticメンバ(関数と変数)、入れ子構造体、構造体内typedef、名前空間 - あれば便利、見通しをよくする機能 関数と演算子のオーバーロード、デフォルト引数、構造体タグ名が型名 これらの機能は全くオーバヘッドがないか、Cと同じぐらい処理が自明だ。 そしてプログラムを安全にし保守を容易にする。
|

|