﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><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++博客-zhuweisky-最新评论</title><link>http://www.cppblog.com/zhuweisky/CommentsRSS.aspx</link><description>思考、探索、实践......   Rumination on C++</description><language>zh-cn</language><pubDate>Wed, 14 Sep 2005 13:32:10 GMT</pubDate><lastBuildDate>Wed, 14 Sep 2005 13:32:10 GMT</lastBuildDate><generator>cnblogs</generator><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2007/12/01/269.html#37625</link><dc:creator>gules</dc:creator><author>gules</author><pubDate>Sat, 01 Dec 2007 14:11:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2007/12/01/269.html#37625</guid><description><![CDATA[virtual函数的访问控制级别具有隐含的意义：一个protected virtual function告诉你：“你写的派生类应该，可是说是必须调用我（基类）的实现。”而一个private virtual function是在说：“派生类可以覆盖，也可以不覆盖我，随你的便。但是你不可以调用我的实现。”<img src ="http://www.cppblog.com/zhuweisky/aggbug/37625.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">gules</a> 2007-12-01 22:11 <a href="http://www.cppblog.com/zhuweisky/archive/2007/12/01/269.html#37625#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2007/09/20/269.html#32570</link><dc:creator>asd</dc:creator><author>asd</author><pubDate>Thu, 20 Sep 2007 10:04:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2007/09/20/269.html#32570</guid><description><![CDATA[派生类public继承时，基类成员函数private还是public没有区别,搂主混淆概念了！<img src ="http://www.cppblog.com/zhuweisky/aggbug/32570.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">asd</a> 2007-09-20 18:04 <a href="http://www.cppblog.com/zhuweisky/archive/2007/09/20/269.html#32570#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2007/07/14/269.html#28043</link><dc:creator>juv</dc:creator><author>juv</author><pubDate>Sat, 14 Jul 2007 08:05:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2007/07/14/269.html#28043</guid><description><![CDATA[楼主内容相当精彩，但是呢，如同楼上所说:不是覆盖和重载，是隐藏！<br><br>还有：<br>基类中的一个虚拟私有成员函数，表示这是一个可以被派生类修改的实现细节。<br>基类中的一个虚拟保护成员函数，表示这是一个必须被派生类修改的实现细节。<br><br><br>不敢苟同！建议楼主看EFFETIVE C++ 第三版条款34！<img src ="http://www.cppblog.com/zhuweisky/aggbug/28043.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">juv</a> 2007-07-14 16:05 <a href="http://www.cppblog.com/zhuweisky/archive/2007/07/14/269.html#28043#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2007/02/01/269.html#18248</link><dc:creator>zhaoflying</dc:creator><author>zhaoflying</author><pubDate>Thu, 01 Feb 2007 03:29:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2007/02/01/269.html#18248</guid><description><![CDATA[@黄剑雄<br>楼主写错了，不是重载，而是隐藏。事实上子类会把基类中的这个同名函数给隐藏掉，试图通过子类对象来调用基类的classID()会报编译错误，但可以通过子类对象调用自己的classID()。所以这种做法是不合适的。<img src ="http://www.cppblog.com/zhuweisky/aggbug/18248.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">zhaoflying</a> 2007-02-01 11:29 <a href="http://www.cppblog.com/zhuweisky/archive/2007/02/01/269.html#18248#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: C++ 事件机制实现</title><link>http://www.cppblog.com/zhuweisky/archive/2007/01/24/193.html#17961</link><dc:creator>csdn.wuyazhe(我的宝贝叫阿刺)</dc:creator><author>csdn.wuyazhe(我的宝贝叫阿刺)</author><pubDate>Wed, 24 Jan 2007 08:31:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2007/01/24/193.html#17961</guid><description><![CDATA[请问你的stl是什么地方下载的，我找不到SafeArrayList.h文件。能否发给我一份。谢谢:)<br>simtel_006@126.com<img src ="http://www.cppblog.com/zhuweisky/aggbug/17961.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">csdn.wuyazhe(我的宝贝叫阿刺)</a> 2007-01-24 16:31 <a href="http://www.cppblog.com/zhuweisky/archive/2007/01/24/193.html#17961#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2007/01/17/269.html#17722</link><dc:creator>黄剑雄</dc:creator><author>黄剑雄</author><pubDate>Wed, 17 Jan 2007 07:33:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2007/01/17/269.html#17722</guid><description><![CDATA[&quot;讲到这里就要提一下，如果当将classID声明为public/protected，并且子类也定义同名的函数classID，但是子类的classID与基类的classID的函数签名不同，那么此时发生的将是函数重载而不是覆盖。&quot;<br><br>这句话是什么意思？为什么是重载，派生类的函数能重载基类的函数？？<br>重载是对同一个类域的不同函数来说吧<img src ="http://www.cppblog.com/zhuweisky/aggbug/17722.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">黄剑雄</a> 2007-01-17 15:33 <a href="http://www.cppblog.com/zhuweisky/archive/2007/01/17/269.html#17722#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2006/12/17/269.html#16560</link><dc:creator>天吻</dc:creator><author>天吻</author><pubDate>Sun, 17 Dec 2006 13:59:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2006/12/17/269.html#16560</guid><description><![CDATA[很受用.顶啊!!!<img src ="http://www.cppblog.com/zhuweisky/aggbug/16560.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">天吻</a> 2006-12-17 21:59 <a href="http://www.cppblog.com/zhuweisky/archive/2006/12/17/269.html#16560#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2006/11/04/269.html#14664</link><dc:creator>mumutou</dc:creator><author>mumutou</author><pubDate>Sat, 04 Nov 2006 06:32:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2006/11/04/269.html#14664</guid><description><![CDATA[#include &lt;string&gt;  <br>#include &lt;iostream&gt; <br>using namespace std ; <br><br>class Base <br>{ <br>protected: <br>    virtual string classID() const<br>    { <br>       return string(&quot;Base&quot;) ; <br>    } <br><br>protected: <br>    virtual void doWork() =0 ; //纯虚函数<br><br>public:  <br>    void work() <br>    { <br>        cout&lt;&lt;&quot;this class id is &quot;&lt;&lt;classID()&lt;&lt;endl ;  <br>        doWork() ; <br>    } <br><br>    virtual ~Base() <br>    { <br>    } <br>}; <br><br>class DerivedA : public Base <br>{ <br>protected: <br>    void doWork() <br>    { <br><br>       cout&lt;&lt;&quot;this is DerivedA doWork !&quot;&lt;&lt;endl ; <br>    } <br>};<br><br><br>void main(int argc, char* argv[])<br>{<br>	DerivedA* bp = new DerivedA() ; <br>	bp-&gt;work() ;  <br>	delete bp ; <br>}<br>基类中的一个虚拟保护成员函数，表示这是一个必须被派生类修改的实现细节。 <br>不然的话，调用的还是Base 的classID<br>这样理解就对了<br><img src ="http://www.cppblog.com/zhuweisky/aggbug/14664.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">mumutou</a> 2006-11-04 14:32 <a href="http://www.cppblog.com/zhuweisky/archive/2006/11/04/269.html#14664#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2006/11/04/269.html#14663</link><dc:creator>mumutou</dc:creator><author>mumutou</author><pubDate>Sat, 04 Nov 2006 06:24:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2006/11/04/269.html#14663</guid><description><![CDATA[我觉得他说的不对,<br>class BaseTemplate <br>{ <br>private: <br><br>    void step1(void)  // 不可被更改的实现细节 <br>    { <br>         <br>    } <br>    virtual void step2(void ) // 可以被派生类修改的实现细节 <br>    { <br>         <br>    } <br><br>protected: <br>    virtual void step3(void ) =0; // 必须被派生类修改的实现细节     <br><br>public: <br>    void work(void) // 骨架函数，实现了骨架 <br>    { <br>       step1() ; <br>       step2() ; <br>       step3() ;     <br>    } <br>};    <br>protected: <br>    virtual void step3(void ) =0; // 必须被派生类修改的实现细节     <br>这是一个pure virtual 函数,当然必须被派生类修改了,不然怎么用<img src ="http://www.cppblog.com/zhuweisky/aggbug/14663.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">mumutou</a> 2006-11-04 14:24 <a href="http://www.cppblog.com/zhuweisky/archive/2006/11/04/269.html#14663#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>re: 纯虚函数能为private吗？</title><link>http://www.cppblog.com/zhuweisky/archive/2006/10/12/269.html#13591</link><dc:creator>dxt</dc:creator><author>dxt</author><pubDate>Thu, 12 Oct 2006 01:43:00 GMT</pubDate><guid>http://www.cppblog.com/zhuweisky/archive/2006/10/12/269.html#13591</guid><description><![CDATA[受用，不错<img src ="http://www.cppblog.com/zhuweisky/aggbug/13591.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/zhuweisky/" target="_blank">dxt</a> 2006-10-12 09:43 <a href="http://www.cppblog.com/zhuweisky/archive/2006/10/12/269.html#13591#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>