On 8 Jun 2011, at 19:09, Nilay Vaish wrote:
> On Wed, 8 Jun 2011, Jack Harvard wrote: > >> When you declare your function private, you can't use instance.function() to >> access it. Is it generating a compile time error? >> >> On 8 Jun 2011, at 00:31, Nilay Vaish wrote: >> >>> Consider the following class declarations -- >>> >>> class A >>> { >>> public: >>> virtual void function() = 0; >>> }; >>> >>> class B : public A >>> { >>> private: >>> void function(); >>> } >>> >>> int main() >>> { >>> B b; >>> b.function(); >>> } >>> >>> Will this code compile correctly? >>> >>> -- >>> Nilay > > I should say that my example program was not what I intended it to be. The > main function should look like -- > > int main() > { > B* b = new B(); > A* a = b; > a->function(); > return 0; > } > > Now what would happen? This compiles. However, if you do b->function(), you would get the same error as your last example, due to the same reason. _______________________________________________ gem5-dev mailing list gem5-dev@m5sim.org http://m5sim.org/mailman/listinfo/gem5-dev