首页 > 解决方案 > 如何在我的类中包含模板参数?

问题描述

我正在尝试为有理数建立一个类。到目前为止,它看起来如下:

#include <iostream>

class Rational{
    public:
        Rational();
        Rational(int a);
        Rational(int a, int b);
        std::string to_string();
    private:
        int num_;
        int denom_;
};

Rational::Rational(){
   num_ = 0;
   denom_ = 1;
}

Rational::Rational(int a){
    num_ = a;
    denom_ = 1;
}

Rational::Rational(int a, int b) {
    num_ = a;
    denom_ = b;
}

std::string Rational::to_string() {
    return std::to_string(num_) + "/" + std::to_string(denom_);
}

在这种情况下,我特别希望用整数初始化对象。我现在想扩展它,以便我可以使用模板参数来确定类。我希望能够编写如下内容:

typedef Rational<int> R;

为了定义,一个类对象应该用整数初始化。这是怎么做到的?非常感谢!!!:)

标签: c++classtemplates

解决方案


推荐阅读