<?xml version="1.0" encoding="UTF-8" ?> <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++/CLI</title><link>http://blogs.wankuma.com/yomoyama/category/1472.aspx</link><description>Visual Studio 2005 C++ /.Net Framework</description><managingEditor>よもやま</managingEditor><dc:language>ja-JP</dc:language><generator>.Text Version 0.95.2004.102</generator><item><dc:creator>よもやま</dc:creator><title>親戚は、友達の関係なのか？(C++ 内包とfriendクラス)</title><link>http://blogs.wankuma.com/yomoyama/archive/2007/11/19/109307.aspx</link><pubDate>Mon, 19 Nov 2007 22:54:00 GMT</pubDate><guid>http://blogs.wankuma.com/yomoyama/archive/2007/11/19/109307.aspx</guid><wfw:comment>http://blogs.wankuma.com/yomoyama/comments/109307.aspx</wfw:comment><comments>http://blogs.wankuma.com/yomoyama/archive/2007/11/19/109307.aspx#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yomoyama/comments/commentRss/109307.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yomoyama/services/trackbacks/109307.aspx</trackback:ping><description>&lt;P&gt;ついに親戚がプレゼントを配りはじめたようです。&lt;BR&gt;CPropertySheetとCPropertyPageの関係を説明できるまで、まだまだ先が長そうな気配・・&lt;BR&gt;#そして、色々と突っ込まれる予感・・&lt;BR&gt;&lt;BR&gt;#include "stdafx.h"&lt;/P&gt;
&lt;P&gt;class Oya {&lt;BR&gt;public:&lt;BR&gt;&amp;nbsp;Oya(){};&lt;BR&gt;&amp;nbsp;~Oya(){};&lt;BR&gt;&amp;nbsp;virtual void Speak();&lt;BR&gt;&amp;nbsp;&lt;FONT color=#008000&gt;virtual void Present();&lt;BR&gt;&lt;/FONT&gt;};&lt;/P&gt;
&lt;P&gt;void Oya::Speak()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;std::string data( "Oya");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#008000&gt;void Oya::Present()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;std::string data( "Save the Money!");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;class Ko:public Oya {&lt;BR&gt;public:&lt;BR&gt;&amp;nbsp;Ko(){};&lt;BR&gt;&amp;nbsp;~Ko(){};&lt;BR&gt;&amp;nbsp;void Speak();&lt;BR&gt;&amp;nbsp;void Present();&lt;BR&gt;};&lt;/P&gt;
&lt;P&gt;void Ko::Speak()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;std::string data( "Ko");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#008000&gt;void Ko::Present()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;std::string data( "I want to buy the \"Wii!!\"");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;class ShinSeki :public Oya{&lt;BR&gt;protected:&lt;BR&gt;&amp;nbsp;&lt;FONT color=#008000&gt;std::vector&amp;lt;Oya*&amp;gt; m_Oyas;&lt;BR&gt;&lt;/FONT&gt;public:&lt;BR&gt;&amp;nbsp;ShinSeki() {};&lt;BR&gt;&amp;nbsp;~ShinSeki(){};&lt;BR&gt;&amp;nbsp;//&lt;BR&gt;&amp;nbsp;void AddPresentKo(Oya* pOya) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;m_Oyas.push_back( pOya);&lt;BR&gt;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;//&lt;BR&gt;&lt;FONT color=#008000&gt;&amp;nbsp;void Present()&lt;BR&gt;&amp;nbsp;{&lt;BR&gt;&amp;nbsp;&amp;nbsp;std::vector&amp;lt;Oya*&amp;gt;::iterator iteOyako;&lt;BR&gt;&amp;nbsp;&amp;nbsp;iteOyako = m_Oyas.begin();&lt;BR&gt;&amp;nbsp;&amp;nbsp;while( iteOyako != m_Oyas.end() ) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;Oya* pItazura = *iteOyako;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;pItazura-&amp;gt;Present();&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;iteOyako++;&lt;BR&gt;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;void Speak();&lt;BR&gt;&amp;nbsp;//&lt;BR&gt;&amp;nbsp;friend class Oya;&lt;BR&gt;&amp;nbsp;friend class Ko;&lt;BR&gt;};&lt;/P&gt;
&lt;P&gt;void ShinSeki::Speak()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;Oya::Speak();&lt;BR&gt;&amp;nbsp;std::string data( "Shinseki");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;int _tmain(int argc, _TCHAR* argv[])&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;Oya* pData[10];&lt;BR&gt;&lt;FONT color=#008000&gt;&amp;nbsp;ShinSeki Shinzoku;&lt;/FONT&gt;&lt;BR&gt;&amp;nbsp;int nIndex = 0, nCnt;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;pData[nIndex++] = new Oya();&lt;BR&gt;&amp;nbsp;pData[nIndex++] = new Ko();&lt;BR&gt;&lt;FONT color=#008000&gt;&amp;nbsp;//pData[nIndex++] = new ShinSeki();&lt;BR&gt;&amp;nbsp;pData[nIndex++] = &amp;amp;Shinzoku;&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;for( nCnt = 0; nCnt &amp;lt; nIndex; nCnt++) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;pData[nCnt]-&amp;gt;Speak();&lt;BR&gt;&amp;nbsp;}&lt;BR&gt;&lt;FONT color=#008000&gt;&amp;nbsp;Shinzoku.AddPresentKo( new Oya() );&lt;BR&gt;&amp;nbsp;Shinzoku.AddPresentKo( (Oya*)pData[0] );&lt;BR&gt;&amp;nbsp;Shinzoku.AddPresentKo( (Oya*)pData[1] );&lt;BR&gt;&amp;nbsp;Shinzoku.AddPresentKo( (Oya*)new Ko() );&lt;BR&gt;&amp;nbsp;Shinzoku.Present();&lt;BR&gt;&lt;/FONT&gt;&amp;nbsp;//&lt;BR&gt;&amp;nbsp;for( nCnt = 0; nCnt &amp;lt; &lt;FONT color=#008000&gt;nIndex -1&lt;/FONT&gt;; nCnt++) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;delete pData[nCnt];&lt;BR&gt;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;return 0;&lt;BR&gt;}&lt;BR&gt;&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yomoyama/aggbug/109307.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>よもやま</dc:creator><title>親の子、子知らず（Ｃ＋＋ virtual キーワード)</title><link>http://blogs.wankuma.com/yomoyama/archive/2007/11/19/109057.aspx</link><pubDate>Mon, 19 Nov 2007 00:15:00 GMT</pubDate><guid>http://blogs.wankuma.com/yomoyama/archive/2007/11/19/109057.aspx</guid><wfw:comment>http://blogs.wankuma.com/yomoyama/comments/109057.aspx</wfw:comment><comments>http://blogs.wankuma.com/yomoyama/archive/2007/11/19/109057.aspx#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yomoyama/comments/commentRss/109057.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yomoyama/services/trackbacks/109057.aspx</trackback:ping><description>&lt;P&gt;良く登場してきますよね～&lt;BR&gt;class Oya {&lt;BR&gt;public:&lt;BR&gt;&amp;nbsp;Oya(){};&lt;BR&gt;&amp;nbsp;~Oya(){};&lt;BR&gt;&amp;nbsp;virtual void Speak();&lt;BR&gt;};&lt;/P&gt;
&lt;P&gt;void Oya::Speak()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;std::string data( "Oya");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;class Ko:public Oya {&lt;BR&gt;public:&lt;BR&gt;&amp;nbsp;Ko(){};&lt;BR&gt;&amp;nbsp;~Ko(){};&lt;BR&gt;&amp;nbsp;void Speak();&lt;BR&gt;};&lt;/P&gt;
&lt;P&gt;void Ko::Speak()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;std::string data( "Ko");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;class ShinSeki :public Oya{&lt;BR&gt;public:&lt;BR&gt;&amp;nbsp;ShinSeki() {};&lt;BR&gt;&amp;nbsp;~ShinSeki(){};&lt;/P&gt;
&lt;P&gt;&amp;nbsp;void Speak();&lt;BR&gt;&amp;nbsp;friend class Oya;&lt;BR&gt;};&lt;/P&gt;
&lt;P&gt;void ShinSeki::Speak()&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;Oya::Speak();&lt;BR&gt;&amp;nbsp;std::string data( "Shinseki");&lt;BR&gt;&amp;nbsp;std::cout &amp;lt;&amp;lt; data.c_str() &amp;lt;&amp;lt; std::endl;&lt;BR&gt;}&lt;/P&gt;
&lt;P&gt;int _tmain(int argc, _TCHAR* argv[])&lt;BR&gt;{&lt;BR&gt;&amp;nbsp;Oya* pData[10];&lt;BR&gt;&amp;nbsp;int nIndex = 0, nCnt;&lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;pData[nIndex++] = new Oya();&lt;BR&gt;&amp;nbsp;pData[nIndex++] = new Ko();&lt;BR&gt;&amp;nbsp;pData[nIndex++] = new ShinSeki();&lt;BR&gt;&amp;nbsp;for( nCnt = 0; nCnt &amp;lt; nIndex; nCnt++) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;pData[nCnt]-&amp;gt;Speak();&lt;BR&gt;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;for( nCnt = 0; nCnt &amp;lt; nIndex; nCnt++) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;delete pData[nCnt];&lt;BR&gt;&amp;nbsp;}&lt;BR&gt;&amp;nbsp;return 0;&lt;BR&gt;}&lt;BR&gt;親戚クラスは親に対して何かしでかそうとしてますが&lt;BR&gt;この時点ではなにもなし。&lt;BR&gt;何をしてくれるのやら・・&lt;BR&gt;もしかしたら、子供にお年玉渡すための準備かもしれませんが（笑&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yomoyama/aggbug/109057.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>よもやま(yomoyama@wankuma.com)</dc:creator><title>恥ずかしながら、はまった・・</title><link>http://blogs.wankuma.com/yomoyama/archive/2007/09/16/96458.aspx</link><pubDate>Sun, 16 Sep 2007 00:38:00 GMT</pubDate><guid>http://blogs.wankuma.com/yomoyama/archive/2007/09/16/96458.aspx</guid><wfw:comment>http://blogs.wankuma.com/yomoyama/comments/96458.aspx</wfw:comment><comments>http://blogs.wankuma.com/yomoyama/archive/2007/09/16/96458.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yomoyama/comments/commentRss/96458.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yomoyama/services/trackbacks/96458.aspx</trackback:ping><description>&lt;p&gt;ずいぶんと触ってなかったSTL&lt;br&gt;(元ネタは、→&lt;a href="http://blogs.wankuma.com/episteme/archive/2007/09/12/95680.aspx"&gt;トークン分割(わるのり)επιστημηさん&lt;/a&gt;)&lt;/p&gt; &lt;p&gt;&lt;br&gt;トークンで切り出した字句をvectorを使って格納してやれっっとコーディング・・&lt;br&gt;&lt;/p&gt; &lt;p&gt;ちょこ、ちょこちょこ・・・・（しばらく経つ）・・、&lt;/p&gt; &lt;p style="font-size: x-large; color: red"&gt;わ、忘れてるじゃねぇぇぇかぁぁぁ&lt;/p&gt; &lt;p&gt;&lt;/p&gt;&lt;br&gt;しばらく修行の旅に出かけますorz&lt;img src ="http://blogs.wankuma.com/yomoyama/aggbug/96458.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>よもやま(yomoyama@wankuma.com)</dc:creator><title>The Ultimate toolbox続き</title><link>http://blogs.wankuma.com/yomoyama/archive/2007/09/11/95477.aspx</link><pubDate>Tue, 11 Sep 2007 23:39:00 GMT</pubDate><guid>http://blogs.wankuma.com/yomoyama/archive/2007/09/11/95477.aspx</guid><wfw:comment>http://blogs.wankuma.com/yomoyama/comments/95477.aspx</wfw:comment><comments>http://blogs.wankuma.com/yomoyama/archive/2007/09/11/95477.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yomoyama/comments/commentRss/95477.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yomoyama/services/trackbacks/95477.aspx</trackback:ping><description>&lt;P&gt;サンプル作成時の注意です。&lt;BR&gt;Visual Studio 2005 Standard Edition(日本語版) XP SP2環境でビルドしたところ&lt;/P&gt;
&lt;TABLE cellSpacing=0 cellPadding=2 width=500 border=1&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD align=middle width=116&gt;種類&lt;/TD&gt;
&lt;TD align=middle width=164&gt;ロケーション&lt;/TD&gt;
&lt;TD align=middle width=218&gt;エラー／警告内容&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD vAlign=top width=114&gt;ソース&lt;/TD&gt;
&lt;TD width=167&gt;OXPaser.cpp&lt;/TD&gt;
&lt;TD width=218&gt;定数定義にて文字&lt;STRIKE&gt;化&lt;/STRIKE&gt;ばけ&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width=113&gt;サンプルソース内&lt;/TD&gt;
&lt;TD width=169&gt;utlity\AdvancedAssert&lt;/TD&gt;
&lt;TD width=218&gt;WCHARの再定義&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width=111&gt;サンプルソース内&lt;/TD&gt;
&lt;TD width=171&gt;gui\TabViews&lt;/TD&gt;
&lt;TD width=218&gt;wchar_t const * const _afxWndControlBarの重複リンク&lt;/TD&gt;&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width=111&gt;ソースおよび&lt;BR&gt;サンプルソース&lt;/TD&gt;
&lt;TD width=173&gt;----------------&lt;/TD&gt;
&lt;TD width=218&gt;"ファイルは、現在のコード ページ (932) で表示できない文字を含んでいます。データの損失を防ぐために、ファイルを Unicode 形式で保存してください。"&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;
&lt;P&gt;&lt;BR&gt;あとデフォルトのままコンパイルするとWIN_VER = 0x0502にされてしまいますので&lt;BR&gt;動作させたい環境にあわせWIN_VERを設定してください。&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yomoyama/aggbug/95477.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>よもやま(yomoyama@wankuma.com)</dc:creator><title>強力なライブラリがオープンソース化</title><link>http://blogs.wankuma.com/yomoyama/archive/2007/09/11/95458.aspx</link><pubDate>Tue, 11 Sep 2007 22:29:00 GMT</pubDate><guid>http://blogs.wankuma.com/yomoyama/archive/2007/09/11/95458.aspx</guid><wfw:comment>http://blogs.wankuma.com/yomoyama/comments/95458.aspx</wfw:comment><comments>http://blogs.wankuma.com/yomoyama/archive/2007/09/11/95458.aspx#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yomoyama/comments/commentRss/95458.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yomoyama/services/trackbacks/95458.aspx</trackback:ping><description>&lt;p&gt;気がつけば、オープンソース化されてました。&lt;br&gt;&lt;a href="http://www.codeproject.com/MFC/UltimateToolbox.asp"&gt;The Ultimate toolbox ( Code Project)&lt;/a&gt;&lt;/p&gt; &lt;p&gt;サンプルを本家(&lt;a href="http://theultimatetoolbox.com/"&gt;The Ultimate toolbox&lt;/a&gt;)からダウンロードしては、関心していました。&lt;br&gt;ちょこちょこと作る（？）CEditやCButton等々から派生したクラスよりは、すばらしいできです。&lt;br&gt;&lt;br&gt;英語に抵抗力がない方で、MFCでオーナードロー、メッセージフック、サブクラス化興味ある方、ソースみるだけでも勉強になりますよ（＾＾&lt;/p&gt;&lt;img src ="http://blogs.wankuma.com/yomoyama/aggbug/95458.aspx" width = "1" height = "1" /&gt;</description></item><item><dc:creator>よもやま(yomoyama@wankuma.com)</dc:creator><title>For eachに感謝（汗</title><link>http://blogs.wankuma.com/yomoyama/archive/2007/09/01/93167.aspx</link><pubDate>Sat, 01 Sep 2007 12:46:00 GMT</pubDate><guid>http://blogs.wankuma.com/yomoyama/archive/2007/09/01/93167.aspx</guid><wfw:comment>http://blogs.wankuma.com/yomoyama/comments/93167.aspx</wfw:comment><comments>http://blogs.wankuma.com/yomoyama/archive/2007/09/01/93167.aspx#Feedback</comments><slash:comments>15</slash:comments><wfw:commentRss>http://blogs.wankuma.com/yomoyama/comments/commentRss/93167.aspx</wfw:commentRss><trackback:ping>http://blogs.wankuma.com/yomoyama/services/trackbacks/93167.aspx</trackback:ping><description>&lt;P&gt;ＭＦＣでＸＭＬファイルにて&lt;BR&gt;子要素ノードを処理する場合・・&lt;BR&gt;IXMLDOMNodePtr pKoDomoNode = pNode-&amp;gt;GetfirstChild();&lt;BR&gt;while (pKoDomoNode!= NULL) {&lt;BR&gt;　　pKoDomoNode = pKoDomoNode -&amp;gt;GetnextSibling();&lt;BR&gt;}&lt;BR&gt;&lt;BR&gt;なのが&lt;BR&gt;&lt;STRIKE&gt;Ｃ＋＋．Ｎｅｔ&lt;/STRIKE&gt;Ｃ＋＋／ＣＬＩで&lt;BR&gt;&amp;nbsp;&amp;nbsp;for each( XmlNode^ KoDomoNode in OyaNode-&amp;gt;ChildNodes) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;String^ NodeName =&amp;nbsp; KoDomoNode-&amp;gt;Name;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;MessageBox::Show( NodeName, "ReadAppEnv KoDomoNode");&lt;BR&gt;&amp;nbsp;&amp;nbsp;}&lt;BR&gt;&lt;STRIKE&gt;Ｃ＋＋．Ｎｅｔ&lt;/STRIKE&gt;Ｃ＋＋／ＣＬＩもＶＢに感化（？）されたのか本当感謝感激です。&lt;BR&gt;[追加]&lt;BR&gt;Visual C++ Version 6.0にはなくVB6にはfor each文があってうらやましく思ったときもありました・・&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;POSITION pos = xxx.GetHeadPosition();&lt;BR&gt;while(pos) {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; xxx = xxx.GetNext(pos);&lt;BR&gt;}&lt;BR&gt;CListやCArrayでお世話になってたこんな処理もすっきりしそうです。&lt;/P&gt;&lt;img src ="http://blogs.wankuma.com/yomoyama/aggbug/93167.aspx" width = "1" height = "1" /&gt;</description></item></channel></rss>