当前位置: 代码迷 >> VC >> [求教]父类方法调用子类对象和方法的有关问题
  详细解决方案

[求教]父类方法调用子类对象和方法的有关问题

热度:309   发布时间:2016-05-05 00:10:14.0
[求教]父类方法调用子类对象和方法的问题
//LibraryBuileerPlugins.h

 class CLibraryBuilderPlugins
 {
 public:
 static bool ExtractPluginMetadata(DWORD nIndex, const CString& strPath);

 private:
 .......
 };

 //LibraryBuileerPlugins.cpp

 bool CLibraryBuilderPlugins::ExtractPluginMetadata(DWORD nIndex, const CString& strPath)
 {
 .....
       return LibraryBuilder.SubmitMetadata( nIndex, strSchemaURI, pInner ) != 0;
 .....
 else if ( hr == E_UNEXPECTED )
 {
 return LibraryBuilder.SubmitCorrupted( nIndex );
 }
 ......
 }


 //LibraryBuilder.h

 class CLibraryBuilder :
 public CLibraryBuilderInternals
 , public CLibraryBuilderPlugins
 , public CThreadImpl
 {
 public:
 CLibraryBuilder();
 virtual ~CLibraryBuilder();
 .....
 bool SubmitCorrupted(DWORD nIndex);
 bool RefreshMetadata(const CString& sPath);
 ..........
 }
 extern CLibraryBuilder LibraryBuilder;

问题是,父类CLibraryBuilderPlugins中的方法怎么可以引用子类的对象和方法?这个应该怎样理解呢?谢谢 

------解决方案--------------------
class s
{
  b b1;
  public:
   void test(){
  b1.foo();//这里为何不行????
}
};
class b:s{
  public:
   void foo(){}
}
  相关解决方案