函数重载和调用

tyc72
#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()在该类中执行该函数,但似乎总是认为它需要更多的参数。有人可以告诉我为什么吗?

巴特

现在,您设置模板的方式始终必须指定类型XY如果您将第二个模板指定为默认模板,则可以仅使用第一个模板调用它,而代码将假定第二个为默认模板:

template <class X, class Y = char>

在这种情况下,默认值为char

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

调用重载的构造函数

来自分类Dev

重载函数调用运算符和返回类型

来自分类Dev

函数调用运算符的继承和重载

来自分类Dev

C ++模板和对重载函数的歧义调用

来自分类Dev

重载函数调用运算符和返回类型

来自分类Dev

C ++模板和对重载函数的歧义调用

来自分类Dev

如何调用“按值调用”和“按引用调用”重载函数?

来自分类Dev

重载函数和继承

来自分类Dev

函数重载和模板

来自分类Dev

nodeJS中的重载函数调用

来自分类Dev

递归调用重载的C ++函数

来自分类Dev

分解出重载的函数调用

来自分类Dev

Java方法重载和调用

来自分类Dev

Java方法重载和调用

来自分类Dev

在构造函数中调用重载构造函数

来自分类Dev

SFINAE和重载函数的地址

来自分类Dev

C ++ 11 auto,std :: function和对重载函数的模糊调用

来自分类Dev

对于重载函数,请为父实例和子实例调用专用版本

来自分类Dev

如何在ASP.NET中编写函数重载和对象调用

来自分类Dev

重载函数调用操作符(),用于索引和分配模板对象

来自分类Dev

Typescript函数重载“没有重载匹配此调用”

来自分类Dev

我如何在重载函数中包含和重载函数

来自分类Dev

从重载的构造函数中调用`this`

来自分类Dev

对重载整数构造函数的歧义调用

来自分类Dev

使用泛型类型调用重载函数

来自分类Dev

调用重写的虚函数而不是重载

来自分类Dev

如何基于枚举typeinfo调用重载函数?

来自分类Dev

模板编程:对重载函数的歧义调用

来自分类Dev

C ++继承:调用重载的基类函数