永发信息网

C++无法解析的外部命令和外部符号

答案:2  悬赏:0  手机版
解决时间 2021-02-18 19:33
编译的时候出现
无法解析的外部命令


error LNK2001: 无法解析的外部符号 "public: virtual double __thiscall Shape::area(void)const " (?area@Shape@@UBENXZ) E:\VS\Project\Project\Circle.obj Project

//Shape.h
#define PI 3.1415
using namespace std;

class Shape
{
public:
virtual double circum() const;
virtual double volume() const;
virtual double area() const;
virtual void print() const = 0;
};
---------------------------------------------------------------------------------------

//Circle.h
#include "Shape.h"
#define PI 3.1415

class Circle : public Shape
{
public:
Circle(double = 0.0);
void setRadius(double);
double getRadius() const;
double circum() const;
virtual double area() const;
virtual void print() const;
private:
double radius;
};
---------------------------------------------------------------------------------------
//Circle.cpp
#include
#include "Circle.h"
#define PI 3.1415
using namespace std;

Circle::Circle(double r)
{
setRadius(r);
}

void Circle::setRadius(double r)
{
radius = r;
}

double Circle::getRadius() const
{
return radius;
}

double Circle::circum() const
{
return PI * getRadius() * 2;
}

double Circle::area() const
{
return PI * getRadius() * getRadius();
}

void Circle::print() const
{
cout << "圆的周长为:" << circum() << endl;
cout << "圆的面积为:" << area() << endl;
}

int main()
{
double r;
cout << "shuru";
cin >> r;
Circle m;
m.setRadius(r);
m.print();
}

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯