2009-07-31から1日間の記事一覧

正規表現を実装する 第三回「?量化子」

正規表現を実装する 第一回「リテラル」 - (void*)Pないと 正規表現を実装する 第二回「任意の一文字」 - (void*)Pないと 第三回は、ある文字が0個か1個あればマッチする「?」を実装します。これは割とややこしそうです。 int MyRegex::match_main(const cha…

正規表現を実装する 第二回「任意の一文字」

正規表現を実装する 第一回「リテラル」 - (void*)Pないと 第二回は任意の一文字にマッチする「.」(ドット)を実装してみたいと思います。 int MyRegex::match (const char* str,const char* regex) { if ( !*regex ) return 1; return this->match_main(st…

演算子のオーバーロードを利用したコピー禁止のオブジェクト

C++

http://www.geocities.jp/ky_webid/cpp/language/017.html インスタンスをコピーする手段には、代入演算の他に、コピーコンストラクタによるものもあるので、この2つを封じることができれば、コピーは禁止できます。これらを封じる方法は、両者を private …

単項演算子のオーバーロード

C++

http://www.geocities.jp/ky_webid/cpp/language/017.html単項の演算子、例えばインクリメントや-1とか+1といった符号などのオーバーロードも可能です。試してみます。 #include <iostream> class CNum { public: int m_num; CNum (int num); int getNum(); CNum opera</iostream>…