如何使用类获取矩形的面积?

Posted

技术标签:

【中文标题】如何使用类获取矩形的面积?【英文标题】:How to get area of rectangle using class? 【发布时间】:2020-05-13 16:44:46 【问题描述】:

我的任务是使用类计算矩形的面积和周长。输入函数应该在类内。到目前为止,我编写了代码,但似乎有我无法检测到的错误。

我们将不胜感激。

矩形.h

#ifndef RECTANGLE_H
#define RECTANGLE_H
class Rectangle
    public:
        int width, length;
        Rectangle();
        Rectangle(int width1,int length1);
        void getRectangle();
        int getArea();
        int getPerimeter();
;

#endif // RECTANGLE_H

矩形.cpp

// oporer ta class

#include<iostream>
#include "rectangle.h"
Rectangle::Rectangle()

    width=0;
    length=0;

Rectangle::Rectangle(int width1,int length1)

    width=width1;
    length=length1;

void Rectangle::getRectangle()

    cin>>width>>length;

int Rectangle::getArea()

    return (width*length);

int Rectangle::getPerimeter()

    return (width+length)*2

// oporer ta rectangle cpp 

main.cpp

#include <iostream>
#include "rectangle.h"
using namespace std;

int main()

    Rectangle paraFirst();
    paraFirst.getRectangle();
    return 0;

// main fucntion

【问题讨论】:

它有点长,所以我认为最好在另一个网站上发布,但我现在尝试在此处添加代码 您不能只是将多个文件中的代码复制粘贴到在线 IDE 中,#includes 将不起作用并掩盖实际错误。但请注意,Rectangle paraFirst(); 将被解析为函数声明,而不是构造函数调用。 你现在看到代码了吗? 如果您添加错误文本,您的问题会更好。如果这是 Visual Studio,则输出选项卡是从错误列表复制错误消息文本的更好选择。原因是输出选项卡更详细,其 100% 文本不是单独的列表。 【参考方案1】:

假设#includes 在您的本地设置中工作,我在这里看到两个拼写错误:

cin&gt;&gt;width&gt;&gt;length;必须std::cin &gt;&gt; width &gt;&gt; length; return (width+length)*2 后缺少分号

可能是主要问题:

Rectangle paraFirst();

被解析为不带参数并返回Rectangle 的函数的声明。另见Most vexing parsing。要调用默认构造函数,只需使用

Rectangle paraFirst;    

Rectangle paraFirst;

【讨论】:

嗨!谢谢!它有帮助:D

以上是关于如何使用类获取矩形的面积?的主要内容,如果未能解决你的问题,请参考以下文章

python类与对象-如何让类支持比较操作

java 编写一个矩形类 rect 要求如下:

旋转矩形的近似重叠面积

mfc做的一个程序,如何将绘画的矩形、圆形保存到位图?保存成.bmp格式?

C++使用一个基类派生出圆形和矩形,在矩形下派生出正方形并计算所有面积

平面坐标系中 如何判断某一点在一矩形区域内?