讨论/《C++ 面试突击》 - 什么是模板?如何实现?/
《C++ 面试突击》 - 什么是模板?如何实现?
共 4 个回复

C++17模板参数自动推导

你用的什么IDE?xcode没有类型不行。

使用类模板时,没有在名字后面的尖括号中指明类型怎么也行

template <typename T>

class Complex
{
private:
    T a;
    T b;
public:
    Complex(T temp1, T temp2) : a(temp1), b(temp2)
    {
    }
    
    Complex operator+(Complex &c)
    {
        Complex tmp(this->a + c.a, this->b + c.b);
        cout << tmp.a << " " << tmp.b << endl;
        return tmp;
    }
};

int main() {
    Complex ex1(10, 20);
    Complex ex2(30, 40);
    Complex ex3 = ex1 + ex2;
    
    return 0;
}
  • 疑问: 模板参数列表不能为空 这句话与模版特化的时候又可以模版参数为空, 是否矛盾? 例如:
template <typename T>
void foo(T t) {}

template <> // 这样算不算是模版参数列表为空呢?
void foo(long t) {}