Access private data through accessor functions. : accessor functions « Class « C++ Tutorial






#include <iostream> 
#include <cstring> 
using namespace std; 
 
class Shape { 
  // private 
  double width; 
  double height; 
public: 
 
  void display() { 
    cout << "Width and height are " << width << " and " << height << "\n"; 
  } 
 
  // accessor functions 
  double getWidth() { return width; } 
  double getHeight() { return height; } 
  void setWidth(double w) { width = w; } 
  void setHeight(double h) { height = h; } 
}; 
 
// Triangle is derived from Shape. 
class Triangle : public Shape { 
public: 
  char style[20]; 
   
  double area() { 
    return getWidth() * getHeight() / 2; 
  } 
 
  void showStyle() { 
    cout << "Triangle is " << style << "\n"; 
  } 
}; 
 
int main() { 
  Triangle t1; 
  Triangle t2; 
 
  t1.setWidth(4.0); 
  t1.setHeight(4.0); 
  strcpy(t1.style, "isosceles"); 
 
  t2.setWidth(8.0); 
  t2.setHeight(12.0); 
  strcpy(t2.style, "right"); 
 
  t1.showStyle(); 
  t1.display(); 
  cout << "Area is " << t1.area() << "\n"; 
 
  t2.showStyle(); 
  t2.display(); 
  cout << "Area is " << t2.area() << "\n"; 
 
  return 0; 
}
Triangle is isosceles
Width and height are 4 and 4
Area is 8
Triangle is right
Width and height are 8 and 12
Area is 48








9.6.accessor functions
9.6.1.Accessor functions
9.6.2.Access private data through accessor functions.