c++ - 构建游泳池类时发生编译器错误

This question already has answers here:
What is an undefined reference/unresolved external symbol error and how do I fix it?

(34个答案)


6年前关闭。




即时通讯遇到问题,我需要参加一个游泳池类(class),并要求用户提供泳池信息,以便它可以根据其中的水量为您提供充水所需的时间。第一个问题是关于pool1.setsize(),pool1.setfillrate(),setarea,setlevel即时错误LNK2019,因为它们还有一些语法错误,我无法弄清楚该如何解决,一个是在.gettime中()说参数太少,但我没有尝试传递参数,而是试图获取返回的int时间
#include "stdafx.h"
#include <iostream>
using namespace std;

class swimmingpool
{
public:
    void setsize(int, int, int);
    void setarea(int);
    void setfillrate(int);
    void setdrainrate(int);
    int gettime(int&);
    void setlevel(int);
    level = level * length * width;
    level = area - level;
    Time = level / fillrate;


private:
    int length;
    int width;
    int depth;
    int area;
    int fillrate;
    int drainrate;
    int Time;
    int level;


};
int _tmain()
{
    swimmingpool pool1;
    int len;
    int wid;
    int dep;
    int are;
    int fill;
    int drn;
    int lvl;
    int time;

    cout << "enter length, width, depth" << endl;
    cin >> len;
    cin >> wid;
    cin >> dep;
    cout << endl;

    pool1.setsize(len, wid, dep);

    are = len * wid * dep;
    pool1.setarea(are);

    cout << "enter the fill rate (int only for a sqft per hr)" << endl;
    cin >> fill;
    cout << endl;

    pool1.setfillrate(fill);

    cout << "enter water level" << endl;
    cin >> lvl;
    cout << endl;

    pool1.setlevel(lvl);

    time = pool1.gettime();

    //lvl = lvl * len * wid;
    //lvl = are - lvl;
    //time = lvl / fill;

    cout << " it will take " << time << " hours" " to fill " << lvl << " sqft in the pool" << endl;

    system("pause");
    return 0;

最佳答案

链接器错误告诉您在类中声明的成员函数没有实现。尝试以以下方式在类声明之后(};之后)添加实现代码:

void swimmingpool::setsize(int len, int wid, int dep)
{
    length = len;
    width = wid;
    depth = dep;
}

您还需要对所有成员函数(setarea,setfillrate,setdrainrate,gettime,setlevel)执行此操作

顺便说一句,这段代码将无法编译:
level = level * length * width;
level = area - level;
Time = level / fillrate;

感觉上面的代码可能应该至少部分位于setlevel函数中。祝好运。

https://stackoverflow.com/questions/25986392/

上一篇:java - 必需的: variable Found:value Error Java Text-Based Calculator

下一篇:java - 字符串预期错误?

相关文章:

c++ - 如何将大写字母读成小写字母?

python - 在 python 中“合并”两个对象

shell - 5 : Syntax error: “(” unexpected (expecting “then” ) in my script

变量声明中的 MySQL 语法错误

php - 获取 SQL 语法错误

c++ - 空指针的内存位置

c++ - 使用图像的形状在 qt 中创建一个窗口

c++ - 以 "right"方式执行 QThread

arrays - 用于返回电子邮件数组的 Ruby 类方法

delphi - 如何在Delphi 2009中声明静态变量?

相关文章:

java - 如何调用其他类(class)的名单?

java - Java找不到符号,错误

c++ - Visual Studio编译错误查找文件

java - Java博士;为什么不编译呢?

java - 创建了一个新的Android项目,在手机上运行时崩溃

java - vlcj 在尝试创建服务器流时出错

c++ - main.obj : error LNK2019: unresolved externa

java - 必需的: variable Found:value Error Java Text-B

c++ - 错误编译 Unresolved external 错误

android - 空载Map Android-Google Maps V2