[Ace-users] [tao-users] Use mulitiple inheritance failed

Steve Totten totten_s at ociweb.com
Fri Oct 12 09:05:15 CDT 2007


Hello Roland,

roland wrote:
>   ACE VERSION: 5.5.6
>  
>     HOST MACHINE and OPERATING SYSTEM:
>  WINDOWS XP SP2  VSS2005

Thanks for using the PRF!

> I design the class like the example in the "Advanced CORBA Programming 
> with C++ "
>   class Thermostat_impl :
>     public virtual POA_CCS::Thermostat,
>     public virtual Thermometer_impl {
> };
>  
>  but the compiler report  error  :
>  
> 1>d:\works\src\taskdistribproduct\TaskDistributProducts.h(93) : error 
> C2250: 'ProductsDsitributor' : ambiguous inheritance of 'CORBA::Boolean 
> TAO_Abstract_ServantBase::_is_a(const char *)'
> 1>d:\works\src\taskdistribproduct\TaskDistributProducts.h(93) : error 
> C2250: 'ProductsDsitributor' : ambiguous inheritance of 'void 
> TAO_Abstract_ServantBase::_dispatch(TAO_ServerRequest &,void *)'
> 1>d:\works\src\taskdistribproduct\TaskDistributProducts.h(93) : error 
> C2250: 'ProductsDsitributor' : ambiguous inheritance of 'const char 
> *TAO_Abstract_ServantBase::_interface_repository_id(void) const'
> 1

How have you defined class Thermometer_impl?  Be sure it also
uses *virtual* inheritance from its base (skeleton) class
POA_CCS::Thermometer, as shown in "Advanced CORBA Programming
with C++", section 11.6.1.

By the way, OCI's "CORBA Programming with C++" training course
covers topics such as this in detail.

http://www.ociweb.com/education/services/descrip/ESDC02-01.html

If you are interested, please contact me directly or contact our
training department at training at ociweb.com.

Steve
-- 
----------------------------------------------------------------
  Steve Totten, Principal Software Engineer and Partner
  Object Computing, Inc. (OCI), St. Louis, MO, USA
  http://www.ociweb.com/  http://www.theaceorb.com/
----------------------------------------------------------------



More information about the Ace-users mailing list