[英]Working with classes [Error] ld returned 1 exit status
我嘗試搜索此錯誤的答案,並嘗試了建議的修復程序,但沒有任何幫助,因此我尋求幫助。 我不斷收到ID返回1退出狀態錯誤。 我正在使用Dev-C ++作為IDE。
這是我的頭文件:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
class Record
{
private:
string name;
int id;
double rate;
double hours;
public:
Record();
Record (string n, int empid, double hourlyRate, double hoursWorked);
// constructor
void read_data_from_file();
double calculate_wage();
void print_data();
/* SETTERS AND GETTERS */
void set_name (string n);
string get_name();
void set_id (int empid);
int get_id();
void set_rate (double hourlyRate);
double get_rate();
void set_hoursWorked(double hoursWorked);
double get_hoursWorked();
/* END OF SETTERS AND GETTERS */
};
這是我的Record.cpp
#include "Record.h"
Record::Record(string n, int empid, double hourlyRate, double hoursWorked)
{
name = n;
empid = id;
hourlyRate = rate;
hoursWorked = hours;
}
//
void Record::set_name(string n)
{
name = n;
}
string Record::get_name()
{
return name;
}
//
void Record::set_id(int empid)
{
id = empid;
}
int Record::get_id()
{
return id;
}
//
void Record::set_rate(double hourlyRate)
{
rate = hourlyRate;
}
double Record::get_rate()
{
return rate;
}
//
void Record::set_hoursWorked(double hoursWorked)
{
hours = hoursWorked;
}
double Record::get_hoursWorked()
{
return hours;
}
//
當然,我有一個int main()函數。
#include "Record.h"
int main()
{
Record employee;
ifstream myFile;
return 0;
}
附帶一提:這是我的第一個與使用類有關的項目,也許有更簡單的方法可以做到這一點,但這是我能想到的。
您忘記實現默認的構造函數(在main中調用)。 將此添加到您的.cpp:
Record::Record() : name(), id(0), rate(0), hours(0) { }
Dev C ++ IDE允許您調用默認構造函數而無需實現。 由於未調用默認構造函數或其他構造函數,因此由於調用而發生了問題。 實現是另一回事。 總的來說,你只需要
Record employee();
Record employee1("temp",1,12.2,43.4);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.