C++

Pimplイディオムの場合もインターフェイスの場合も、基本は公開用クラスも実装用クラスもそれぞれ継承すればいいだけ。

Pimplイディオム

継承元クラス

継承先クラス

インターフェイス

C++

前回は、委譲を使うシンプルなPimplイディオムを取り上げた。今回は、よりオブジェクト指向(OOP)らしいインターフェイス(抽象クラス)を使った場合。

ヘッダファイル側:インターフェイスの宣言

定義フ

C++

前方宣言をしただけのような不完全クラスのインスタンスをstd::auto_ptrで保持しようとしたとき、上のような場合にはインスタンスが解放されず、メモリリークが生じてしまう。

ポイントは、Incompleteクラスの実際 ...

C++,アプリケーション

【追記】
2011年8月7日:アンチウイルスソフトについて

Visual C++ 2010(VC++ 2010)は基本的にWindows 7を対象としており、他のOSでは不具合というほどではないが、うまく動作しない ...

C++

typedefやテンプレートが複雑にからみ合っていると厄介だが、ひとつひとつベースから前方宣言していくしかない。

なお、STLには<iosfwd>というiostream周りの前方宣言をまとめたヘッダファイルもあ ...

【更新】
2011年7月31日:Eventのサブクラスにおける文字列の自動生成

FlashDevelopでは、コード中の文字にキャレットがあるとき、Ctrl + Shift + 1のショートカットを実行するとコード ...

Flashでは表示オブジェクトの左上隅がデフォルトの原点になっているが、これを表示オブジェクトの中心にしたほうがわかりやすい場合がある。

表示オブジェクトを中央に揃える場合や、それらを等間隔に並べる場合は、このほうがコーデ ...

ActionScript 3.0ではコンストラクタをprivateにできないので、Singletonパターンを実装するには一工夫必要になる。

通常は該当クラスのインスタンスを保持するstaticな変数を用意しておくが、これ ...

イベントをリスナーで受け取ったとき、Event#targetとEvent#currentTargetの指し示すものが異なる場合がある。特にMouseEventでは注意が必要。

Event#targetとcurrentTar ...

【追記】
2011年7月24日:オブジェクトリテラル

Objectクラスに動的にプロパティを追加して連想配列的に使う場合、プロパティ名(キー)に指定したオブジェクトは、あくまでその文字列表現が適用される(Strin ...