c++ - 类,显示我的最终结果 C++ 的问题

标签 c++ class

我的程序应该简化 num 和 denom。但是我必须使用一个类,并使用一个显示函数来显示我的最终结果,但每次我都显示它。它给了我 82 的数字和 21305... 的书房。就像它没有从 Fraction::set 中获取数字一样。

任何人都可以向我解释我做错了什么以及我在使用类时不理解的地方。谢谢你,提前。

#include <iostream>
using namespace std;

 class Fraction
 {
        int num, den;

        public:
                void set(int,int);
                void display();
 };

 int main(void) {
     Fraction fraction;
     int num, den;

     cout << "Fraction Simplifier" << endl;
     cout << "===================" << endl;

     cout << "Numerator   : ";
     cin >> num;
     cout << "Denomenator : ";
     cin >> den;
     cout << endl;

     fraction.set(num, den);
     fraction.display();

     cout << endl;

     return 0;
 }

void Fraction::set(int num, int  den)
{
        int i;

        for( i = num * den; i > 1; i--)
        {
                if(den % i == 0 && num % i == 0)
                {
                        den/=i;
                        num/=i;
                }
        }
}
void Fraction::display()
{
        cout << num << endl;
        cout << den << endl;
}

最佳答案

Fraction::set 中,每当您引用 numden 时,都是指函数参数。

最后,您可能想将这些值“保存”到成员变量中,使用 this-> 来消除歧义:

this->num = num;
this->den = den;

这不是真正的消除歧义,但你知道。

关于c++ - 类,显示我的最终结果 C++ 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21191910/

相关文章:

c++ - 将类的所有成员复制到当前对象

c++ - 如何打印出 LLVM 中的指令?

c++ - 如何让声音停止在 OpenAL 中播放

java - 访问其他地方的类的字段?

java - 子类和父类中的方法重写可以有不同数量的参数?参数数量可以不同吗?

c++ - 链接错误 C++ 继承

c++ - 在类中存储指针或对象?

c++ - 初始化器列表和运算符的 RHS

c++ - 检查元素是否存在

java - 实用程序类 - 什么是正确的方法?