微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c – ”之前的预期主要表达.

#include <iostream>
using std::cout;
using std::endl;

class square {

public:
    double length,width;

    square(double length,double width);
    square();

    ~square();

    double perimeter();
};

double square::perimeter() {
return 2*square.length + 2*square.width;
}

int main() {

square sq(4.0,4.0);

cout << sq.perimeter() << endl;

return 0;
}

我正在尝试编写一个简单的类程序.我收到错误

在成员函数’double square :: circles()’;
.cpp:21:error:”之前的primary-expression代币
.cpp:21:error:”之前的primary-expression代币

这是否意味着我必须使用2 * square :: length 2 * square :: width?

解决方法

正方形是一种,不是物体;代替
return 2*square.length + 2*square.width;

return 2*length + 2*width;

(其隐含地与以下相同:

return 2*this->length + 2*this->width;

你可能,或者请不可以,为了清楚起见).

2 * square :: length 2 * square :: width如果长度和宽度都是有效的语法

>正方形的静态成员,或>某些基层广场的成员,或>某些命名空间中的对象正方形

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐