Mega Code Archive

 
Categories / C++ Tutorial / Class
 

Access private data through accessor functions

#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