pointers to base class : object pointer « Class « C++

Home
C++
1.Bitset
2.Class
3.Console
4.Data Structure
5.Data Type
6.Deque
7.Development
8.File
9.Function
10.Generic
11.Language
12.List
13.Map Multimap
14.Overload
15.Pointer
16.Qt
17.Queue Stack
18.Set Multiset
19.STL Algorithms Binary search
20.STL Algorithms Heap
21.STL Algorithms Helper
22.STL Algorithms Iterator
23.STL Algorithms Merge
24.STL Algorithms Min Max
25.STL Algorithms Modifying sequence operations
26.STL Algorithms Non modifying sequence operations
27.STL Algorithms Sorting
28.STL Basics
29.String
30.Valarray
31.Vector
C / ANSI-C
C Tutorial
C++ Tutorial
Visual C++ .NET
C++ » Class » object pointerScreenshots 
pointers to base class
  
#include <iostream>
using namespace std;

class CPolygon {
  protected:
    int width, height;
  public:
    void set_values (int a, int b)
    width=a; height=b; }
};

class CRectangle: public CPolygon {
  public:
    int area ()
    return (width * height)}
};

class CTriangle: public CPolygon {
  public:
    int area ()
    return (width * height / 2)}
};

int main () {
  CRectangle rect;
  CTriangle trgl;
  CPolygon * ppoly1 = &rect;
  CPolygon * ppoly2 = &trgl;
  ppoly1->set_values (4,5);
  ppoly2->set_values (4,5);
  cout << rect.area() << endl;
  cout << trgl.area() << endl;
  return 0;
}
  
    
  
Related examples in the same category
1.Use object pointer to reference virtual method
2.Use & to get object address
3.Call virtual function through object pointer
4.Change the object pointer behaviour
5.Using an array of class objects
6.Use dynamic_cast to convert object pointer to its subclass
7.Need reinterpret cast to perform pointer conversion from unrelated classes
8.Need reinterpret_cast to go from pointer to int and from int to pointer
9.Need reinterpret cast to perform reference conversion from unrelated classes -- static_cast doesn't work
10.Declare object pointer
11.Demonstrating the class member access operators . and ->
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.