#include <iostream>
using namespace std;
template <class X, class Y>
class A:
{
public:
X r;
Y s;
A() { cout << "hi" << endl; }
A(X r, Y s) { cout << r << " " << s << endl; }
};
int main()
{
int val1 = 0;
float val2 = 0;
char c;
cin >> val1;
cin >> val2;
cin >> c;
A<char> a;
A<int, char>(val1, c);
A<char, float>(c, val2);
return 0;
}
Код не скомпилируется, потому что строка A<char> a;
имеет слишком мало аргументов.
Я хочу выполнить функцию A()
в классе, но, кажется, всегда думает, что ей нужно больше argumenst. Может кто-нибудь посоветовать мне, почему?