小编lin*_*c88的帖子

C++:构造函数问题

我正在尝试自学C++,而且我正在进行有关构造函数的基本练习.我有一个程序出乎意料地行为:

Fraction.h:

#include <iostream>

#ifndef FRACTION_H
#define FRACTION_H

using namespace std;

class Fraction
{
private:
    int num;
    int denom;
    static int gcd(int a, int b);
    void reduce();
public:
    Fraction(int n=0, int d=1);
    Fraction(Fraction& f);
    ~Fraction();

    Fraction& operator=(const Fraction& f);

    friend Fraction operator+(const Fraction& f1, const Fraction& f2);

    friend ostream& operator<<(ostream& out, const Fraction& f);
};

#endif // FRACTION_H
Run Code Online (Sandbox Code Playgroud)

Fraction.cpp(省略了一些实现):

#include "../include/Fraction.h"

#include <cassert>
#include <iostream>

using namespace std;

int Fraction::gcd(int a, int b) {
    // implementation omitted
}

void Fraction::reduce() …
Run Code Online (Sandbox Code Playgroud)

c++ constructor

5
推荐指数
1
解决办法
225
查看次数

标签 统计

c++ ×1

constructor ×1