Click here to Skip to main content
11,638,173 members (78,154 online)
Rate this: bad
good
Please Sign up or sign in to vote.
See more: OOP
I have following class as

 public abstract class BaseClass
    {
        public virtual void VirtualMethod()
        {
            Console.WriteLine("NewBaseClass:VirtualMethod");
        }
    }
 
    public class DerivedClass : BaseClass
    {
        public override void VirtualMethod()
        {
            Console.WriteLine("NewClassA:VirtualMethod");
           
        }
    }

Now i want to call base class method by creating object of DerivedClass using base keyword
Please help
Posted 4-Mar-13 1:29am
Edited 4-Mar-13 1:31am
v2
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 1

In your example (C++):

// Create an instance of DerivedClass
DerivedClass *dc = new DerivedClass();
 
// BTW this will work as well:
//BaseClass *dc = new DerivedClass();

// Call the method of base class
dc->BaseClass::VirtualMethod();
 
// Let' clean
delete dc;

This example shall give an output like:

>NewBaseClass:VirtualMethod
  Permalink  
v4
Rate this: bad
good
Please Sign up or sign in to vote.

Solution 2

  Permalink  
Comments
du[DE] at 4-Mar-13 8:48am
   
' Give a man a fish and you feed him for a day, teach a man to fish and you feed him for life' , huh?
;)
Maciej Los at 4-Mar-13 9:09am
   
That's my motto!
And your is?
du[DE] at 4-Mar-13 9:25am
   
I'm too old to have a motto - perhaps "Too old to die young" if any ;)
Maciej Los at 4-Mar-13 9:44am
   
;)

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
0 jyo.net 348
1 Sergey Alexandrovich Kryukov 314
2 stibee 288
3 OriginalGriff 190
4 Mika Wendelius 185
0 OriginalGriff 9,051
1 Sergey Alexandrovich Kryukov 8,773
2 Mika Wendelius 7,034
3 Suvendu Shekhar Giri 2,425
4 F-ES Sitecore 2,408


Advertise | Privacy | Mobile
Web03 | 2.8.150728.1 | Last Updated 4 Mar 2013
Copyright © CodeProject, 1999-2015
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100