狠狠撸
Submit Search
笔颈尘辫濒イディオムについて调査した件
?
Download as PPTX, PDF
?
1 like
?
1,202 views
Yuuki Takada
Follow
颁++の辫颈尘辫濒イディオムについて简単に调べてみました。
Read less
Read more
1 of 17
Download now
Download to read offline
More Related Content
笔颈尘辫濒イディオムについて调査した件
1.
pimplイディオムについて調査した件 Usushiki
2.
pimpl C++で使われるイディオム(アルゴリズム)
3.
というわけで、
5.
もう知っている方は、
7.
Pimplイディオム Pimplは、”ピーインプル” と呼ばれることが多い。 意味としては、 Pointer
To Implementation(実装へのポインタ) Private Implementation(実装の隠蔽) どちらかといえば、上の意味で受け取られることが多い。 しかしてその実態は、下のほうらしい???。 (↑ゲームプログラマのためのC++より)
8.
どんなことができるの?
9.
その1 クラスのインターフェース部分と実装部分を分離できる その2 不要なヘッダファイルのインクルードを減らせる その4
コンパイル時間を減らせる(抑制できる) その3 その1により、再コンパイルする必要がなくなる
10.
こんな時使える ?ヘッダファイルの中にメンバ変数がごちゃごちゃしているとき ?publicとprivateのメンバ(変数、関数)を分離させたいとき ?↑が原因でコンパイルの時間が長くなってきたとき
11.
実装 今回は以前作ったWindowクラスに適応してみる。
12.
pImplイディオム適応 + リファクタリング
後 初期化関数とメンバ変数をpImplクラス内に隠蔽 ヘッダ内にインターフェースとイディオムのみに なった Window.hpp
13.
実装部分 Window.cpp pImplクラスはcppで実装する。
14.
実装部分(イディオムの生成) pImplクラスオブジェクトはWindowクラスのコンストラクタで生成する。 Window.cpp
15.
イディオム内のメンバへのアクセス Window.cpp HandleMessage関数 m_pImpl->(メンバ)の形でアクセスする
16.
まとめ メリット ?クラスのインターフェース部分と実装部分を分離できる ?不要なヘッダのインクルードをなくせる ?コンパイル時間の短縮(抑制) デメリット ?間接参照のオーバーヘッドが発生する
17.
ご清聴ありがとうございました
Download