I'm working on a program that reads the base and height of a triangle of a triangle and then reports the area. Here's what I have so far:
#include<iostream>
using namespace std;
// a simple triangle class with a base and a height
class Triangle {
public:
double setbase(double x) { //was void but changed it to double
base = x;
}
double setheight(double y) {
height = y;
}
double getbase() {
return base;
}
double getheight() {
return height;
}
private:
double base, height;
};
double area(double, double);
int main() {
Triangle isoscoles1;
isoscoles1.setbase;
isoscoles1.setheight;
cin >> isoscoles1.setheight;
cin >> isoscoles1.setbase;
double x = isoscoles1.getbase;
double y = isoscoles1.getheight;
cout << "Triangle Area=" << area(x,y) << endl;
system("pause>nul");
}
double area(double x, double y) {
double a;
a = (x*y) / 2;
return a;
}
This is the error it gives me:-
Severity Code Description Project File Line Suppression State
Error C3867 'Triangle::setbase': non-standard syntax; use '&' to create a pointer to member Project1 c:\users\ku\desktop\test\project1\main.cpp 50
Error C3867 'Triangle::setheight': non-standard syntax; use '&' to create a pointer to member Project1 c:\users\ku\desktop\test\project1\main.cpp 51
Error C2679 binary '>>': no operator found which takes a right-hand operand of type 'overloaded-function' (or there is no acceptable conversion) Project1 c:\users\ku\desktop\test\project1\main.cpp 54
Error C2679 binary '>>': no operator found which takes a right-hand operand of type 'overloaded-function' (or there is no acceptable conversion) Project1 c:\users\ku\desktop\test\project1\main.cpp 55
Error C3867 'Triangle::getbase': non-standard syntax; use '&' to create a pointer to member Project1 c:\users\ku\desktop\test\project1\main.cpp 56
Error C3867 'Triangle::getheight': non-standard syntax; use '&' to create a pointer to member Project1 c:\users\ku\desktop\test\project1\main.cpp 57
What am I doing wrong here?