- //Rectangle.h
- #ifndef RECTANGLE_H
- #define RECTANGLE_H
- class Rectangle
- {
- private:
- double width;
- double length;
- public:
- //constructor
- Rectangle(double w, double l);
-
- //accessor
- double getWidth() const;
- double getLength() const;
- double getArea() const;
-
- //mutator
- void setWidth(double w);
- void setLength(double l);
- };
- #endif
-
- //Rectangle.cpp
- #include "Rectangle.h"
-
- Rectangle::Rectangle(double w, double l):width(w), length(l){}
-
- double Rectangle::getWidth() const
- {
- return width;
- }
-
- double Rectangle::getLength() const
- {
- return length;
- }
-
- double Rectangle::getArea() const
- {
- return width*length;
- }
-
- void Rectangle::setWidth(double w)
- {
- width = w;
- }
-
- void Rectangle::setLength(double l)
- {
- length = l;
- }
-
- //main.cpp
- #include <iostream>
- #include "Rectangle.h"
-
- int main(int argc, char *argv[])
- {
- Rectangle *r;
- r = new Rectangle(5, 10);
-
- std::cout<<"Area: "<<r->getArea()<<std::endl;
-
- return 0;
- }
-
- //V.h
- #ifndef V_H
- #define V_H
- class V
- {
- private:
- int size;
- double *array;
- public:
- V(int s);
- V(double *a, int s);
- int getSize() const;
- double *getArray() const;
- void display() const;
- ~V();
- };
- #endif
-
- //V.cpp
- #include <cstdlib>
- #include <iostream>
- #include "V.h"
- V::V(int s)
- {
- std::cout<<"Constructor V(s) ..."<<std::endl;
- size = s;
- array = new double[size];
- for(int i = 0; i < size; i++)
- array[i] = rand()%100;
- }
-
- V::V(double *a, int s)
- {
- std::cout<<"Constructor V(a, s) ..."<<std::endl;
- size = s;
- array = a;
- }
-
- int V::getSize() const
- {
- return size;
- }
-
- double *V::getArray() const
- {
- return array;
- }
-
- void V::display() const
- {
- for(int i = 0; i < size; i++)
- std::cout<<array[i]<<" ";
- std::cout<<std::endl;
- }
-
- V::~V()
- {
- std::cout<<"Destructor "<<size<<" ..."<<std::endl;
- size = 0;
- delete [] array;
- //array = 0;
- }
-
- //main.cpp
- #include <iostream>
- #include <cstdlib>
- #include "V.h"
-
- int main(int argc, char *argv[])
- {
- V v(5);
- v.display();
-
- V *v2 = new V(10);
- v2->display();
- delete v2;
-
- double *array = new double [15];
- for(int i = 0; i < 15; i++)
- array[i] = rand()%100;
- V *v3 = new V(array, 15);
- v3->display();
- delete v3;
-
- return 0;
- }
-