.cpp文件中的代码

时间:2015-10-21 23:00:14

标签: c++

我是Eclipse环境下的C ++初学者。你能解释一下这段代码的错误吗?

   #include "Shapes.h"

  Shapes::Shapes(float l, float w)
   {
            length = l;
            width = w;


   float calculateArea()
              {
               float area = length * width;
               return calculateArea;
              }
   }

3 个答案:

答案 0 :(得分:9)

您的代码出了问题:

  • 您未以任何方式使用area变量。
  • 您的}之一位置错误。
  • 您的calculateArea可能是Shapes的成员函数,因此应以Shapes::为前缀。
  • 您没有使用会员初始化列表。
  • 你的缩进不一致。

答案 1 :(得分:7)

您忘记在calculatateArea的实现中添加类范围。 您的cpp代码必须类似于

Shapes::Shapes(float l, float w)
{
   length = l;
   width = w;
}

float Shapes::calculateArea()
{
   float area = length * width;
   return area;
}

答案 2 :(得分:1)

这就是您的代码应该如何:

   #include "Shapes.h"

   Shapes::Shape(float l, float w) : length(l), width(w) { }
   float Shape::calculateArea()
   {
       return this->length * this->width;
   }

我更改了构造函数以使用构造函数语法。它比你以前的任务更快。

您应该阅读此http://www.cplusplus.com/doc/tutorial/classes/

它甚至与您正在做的事情完全相同。