2024 / 11 «« ■ »» |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
meaning of mark :: nothing , comment
Pageview
Online Status
Profile
hHandleName = Fe+;
某メーカ勤務の怪しい会社員。
40代に突入しても不惑の域に達しない。
某メーカ勤務の怪しい会社員。
40代に突入しても不惑の域に達しない。
Recent Diary
Recent Comments
RSS & Atom Feed
2006/12/18
ちょっと楽しかった
[Fe+の外部記憶]
Delegate(デリゲート:委譲)という考え方があります。
C#で採用されている概念ですが、Javaには入らなかったという背景があります。
これをC++で似たような事をできるようにして、XMLパーサー(SAX)のラッパークラスを作ってみました。
Delegateは、クラスの関数をオブジェクトのように扱うことが出来るんですが、C++で「なんちゃってDelegate」を作ると、見事にprivateのメソッドも呼び出せちゃいます。
これって、オブジェクト指向を知っている人ならば「なんじゃそれー」ですよね。
カプセル化ぶっ壊てますから。
し・か・し。
Delegateを使ったラッパークラス。
極めて汎用性が高く、便利です。
これで気軽にXMLを利用できるようになりました。
って、思いっきりマニアックなネタ。
MBSの仲間が読んでいたら「?」だよねぇ。
C#で採用されている概念ですが、Javaには入らなかったという背景があります。
これをC++で似たような事をできるようにして、XMLパーサー(SAX)のラッパークラスを作ってみました。
Delegateは、クラスの関数をオブジェクトのように扱うことが出来るんですが、C++で「なんちゃってDelegate」を作ると、見事にprivateのメソッドも呼び出せちゃいます。
これって、オブジェクト指向を知っている人ならば「なんじゃそれー」ですよね。
カプセル化ぶっ壊てますから。
し・か・し。
Delegateを使ったラッパークラス。
極めて汎用性が高く、便利です。
これで気軽にXMLを利用できるようになりました。
って、思いっきりマニアックなネタ。
MBSの仲間が読んでいたら「?」だよねぇ。
posted at 2006/12/21 2:35:11
lastupdate at 2006/12/21 2:35:11
【修正】
Comments
Post your Comment
Menu
Category
Pageview Ranking
Search
Link