[解決済み] ゲッターとセッターをインライン化するのは良い習慣ですか?
2023-05-18 06:06:15
質問
public:
inline int GetValue() const {
return m_nValue;
}
inline void SetValue(int nNewValue) {
this -> m_nValue = nNewValue;
}
について C++を学ぶ を使うと、実行速度が速くなるとのことでした。だから、ゲッターとセッターに使ったらいいんじゃないかと思ったんだ。でも、もしかしたら、欠点もあるのでは?
どのように解決するのですか?
プロファイラーが、インライン化しないことがパフォーマンスの問題を引き起こしていると明確に教えてくれるまでは、何もインライン化しないようにしています。
C++ コンパイラーは非常に賢く、このような単純な関数であれば、ほぼ間違いなく自動的にインライン化してくれます。 また、通常、コンパイラーはあなたよりも賢く、何がインライン化されるべきか、されないべきかを判断するのにはるかに良い仕事をします。
私なら、何をインライン化するか、しないかについて考えるのを避け、解決策に焦点を当てます。 このような場合
inline
キーワードを追加することは非常に簡単で、プロファイラーで潜在的な場所をすぐに見つけることができます。
関連
-
[解決済み】C++ - 解放されるポインタが割り当てられていないエラー
-
[解決済み】関数名の前に期待されるイニシャライザー
-
[解決済み] C++のゲッターとセッターの書き方
-
[解決済み] SQLiteのINSERT/per-secondのパフォーマンスを向上させる
-
[解決済み] Swift Betaのパフォーマンス:配列のソート
-
[解決済み] プロパティとゲッターとセッターの使い分け
-
[解決済み] Intel CPU の _mm_popcnt_u64 で、32 ビットのループカウンターを 64 ビットに置き換えると、パフォーマンスが著しく低下します。
-
[解決済み】Javaで(a != 0 && b != 0)よりも(a*b != 0)の方が速いのはなぜか?
-
[解決済み】プロパティのゲッターとセッター
-
[解決済み] ゲッター、セッター、プロパティのベストプラクティス。JavaとC#の比較
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】getline()が何らかの入力の後に使用されると動作しない 【重複あり
-
[解決済み】致命的なエラー LNK1169: ゲームプログラミングで1つ以上の多重定義されたシンボルが発見された
-
[解決済み】抽象クラス型の無効なnew-expression
-
[解決済み] クラスにデフォルトコンストラクタが存在しない。
-
[解決済み】「corrupted size vs. prev_size」glibc エラーを理解する。
-
[解決済み] 既に.objで定義されている-二重包含はない
-
[解決済み】浮動小数点例外エラーが発生する: 8
-
[解決済み】システムが指定されたファイルを見つけられませんでした。
-
[解決済み】指定範囲内の乱数で配列を埋める(C++)
-
[解決済み】C++ - ステートメントがオーバーロードされた関数のアドレスを解決できない。