【发布时间】:2013-05-02 22:45:32
【问题描述】:
我正在尝试使用 (X,Y) 形式的 XY 点数组中的三个 XY 点来查找最大面积。
我目前在调用 area 函数时遇到错误 called object type 'double' is not a function or function pointer,我不知道为什么。另外,我不知道这个功能是否接近正确,我现在只是在胡闹。谢谢您的帮助!
double area( const Point & a, const Point & b, const Point & c){
double side1 = a.distance(b);
double side2 = b.distance(c);
double side3 = c.distance(a);
double s = (side1 + side2 + side3 / 2.0);
return sqrt(s * (s - side1) * (s - side2) * (s - side3));
}
double maxArea( const Point a[], unsigned elements ){
double area = 0;
double tempArea = 0;
for (unsigned i = 0 ; i < elements; i++)
for (unsigned n = 0; n < elements; n++)
for (unsigned p = 0; p < elements; p++) {
tempArea = area(a[i],a[n],a[p]); //error here
if(tempArea > area){
area = tempArea;
}
}
return area;
}
【问题讨论】:
标签: c++ arrays object compiler-errors