gpt4 book ai didi

c++ - 我收到错误 : "in function main: undefined reference to Fraction::Fraction()"

转载 作者:行者123 更新时间:2023-12-02 11:03:30 29 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





What is an undefined reference/unresolved external symbol error and how do I fix it?

(37 个回答)


7年前关闭。



#include <iostream>

using namespace std;

class Fraction
{

private:
//variables to store numerator and denominator
int num;
int denom;

public:
Fraction();
Fraction(int num): num(num) {}
Fraction(int num, int denom): num(num), denom(denom) {}

int get_numerator() const {return num;}
int get_denominator() const {return denom;}
};

istream &operator>> (istream &input, Fraction &f)
{
int n, d;
char slash;
input >> n;
input >> slash;
input >> d;

f = Fraction(n, d);
return input;
}

ostream &operator<<(ostream &output, const Fraction &frac)
{
return output << frac.get_numerator() << "/" << frac.get_denominator();
}

int main()
{
Fraction frac(1,2);
Fraction frac2;

cout << frac << endl;

cin >> frac2;
cout << frac2 << endl;

return 0;
}

我正在尝试创建分数数据类型。
该代码应允许用户使用重载的“>>”运算符输入分数,但它不起作用,因为我收到错误:
在函数“main”中:未定义对 Fraction::Fraction() 的引用

我试过没有重载输入运算符的代码,它工作正常。

我究竟做错了什么?

最佳答案

编译器要求定义以下函数(默认构造函数):-

 Fraction();

你没有提供的。

关于c++ - 我收到错误 : "in function main: undefined reference to Fraction::Fraction()",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27202633/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com