掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ソースのモジュール分割と処理速度についてご教授ください (ID:60116)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
開発環境;Windows2000sp4/VC++6sp6/SDK ソースのモジュール分割と処理速度との関係について質問です。 あるプロジェクト「FooProject」があるとき、あるクラスを 別モジュールで宣言・定義するとします。 このとき、ケース1のようにヘッダファイルでインラインで 定義した場合とケース2のように別ファイルでインライン定義 した場合は同じことだと認識しています。 ところで、ケース2で、「inline」を書かなかった場合、 インライン化され得ないため、処理速度低下の恐れはありうる と考えてよいでしょうか。 ↓ 是だとすると、hoge.hを複数の.cppでincludeする場合、ケース1 だと複数定義エラーとなるため、ケース2のようにせざるを 得ないということでしょうか。 ↓ 気になるのは、是のとき、関数をインライン化できないため、 オーバーヘッドなどによって遅くなる恐れがあるだろうか、 と言う点と、その回避策はあるのか、という点です。 ご存知の肩が折られましたら、お教えください。 よろしくお願い致します。 なお、inline を記述した場合に、その関数はインライン化される 期待は充分にあると仮定してください。 ■ケース1■ //--[ hoge.h ]-- class CHoge { public: CHoge(){} void doSomething(){ // snip } }; //--[ fooproject.cpp]-- #include "hoge.h" ■ケース2■ //--[ hoge.h ]-- class CHoge { public: CHoge(); void doSomething(); }; //--[ hoge.cpp ]-- CHoge::CHoge(); inline void CHoge::doSomething(){ // snip } //--[ fooproject.cpp]-- #include "hoge.h"
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.