add input for ex8.3
This commit is contained in:
parent
17845570ef
commit
fae6435f3c
2 changed files with 39 additions and 0 deletions
16
ex8.3/Shape.hh
Normal file
16
ex8.3/Shape.hh
Normal file
|
@ -0,0 +1,16 @@
|
|||
#ifndef SHAPE_HH
|
||||
#define SHAPE_HH
|
||||
|
||||
class Shape {
|
||||
public:
|
||||
|
||||
// Constructor, destructor
|
||||
Shape() {} ;
|
||||
virtual ~Shape() {} ;
|
||||
|
||||
// Pure virtual interface functions
|
||||
virtual double surface() const = 0 ;
|
||||
virtual double circumference() const = 0 ;
|
||||
} ;
|
||||
|
||||
#endif
|
23
ex8.3/Square.hh
Normal file
23
ex8.3/Square.hh
Normal file
|
@ -0,0 +1,23 @@
|
|||
#ifndef SQUARE_HH
|
||||
#define SQUARE_HH
|
||||
|
||||
#include "Shape.hh"
|
||||
|
||||
class Square: public Shape {
|
||||
public:
|
||||
|
||||
// Constructor, destructor
|
||||
Square(double size) : _size(size) {} ;
|
||||
virtual ~Square() {} ;
|
||||
|
||||
// Implementation of abstract interface
|
||||
virtual double surface() const { return _size * _size ; }
|
||||
virtual double circumference() const { return 4 * _size ; }
|
||||
|
||||
private:
|
||||
|
||||
double _size ;
|
||||
|
||||
} ;
|
||||
|
||||
#endif
|
Reference in a new issue