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
[email protected]
http://m5sim.org/mailman/listinfo/gem5-dev