这个关于C++类模板的问题

2024-11-29 22:47:43
推荐回答(1个)
回答1:

先解释你的疑问:
//MINTA();//这里这么写是初学者很容易犯的错误,C++创建对象的时候不加左右括号就是调用无参数的构造函数了。你加了左右括号就变成了一个返回类的无参数的函数了。
M INTA;//这样就没有你说的问题了。
还有其他的问题的:
//{n=0;k[20]="there isn't this number"}//这里字符串后面少了分号,C语言里面的字符数组不支持复制和赋值,只能自己编写循环。C++里面使用string来实现这一目的。

最后说一下你这个程序:
程序很烂:结构不清晰,算法也没有达到目的。用C的那一套来往C++上面搬。
如果用C++写这个模板类,代码简洁明了,看起来很舒服。由于实在不知道你这个代码的具体意图(我猜可能是在静态数据里面查找一个整数,那为什么要设计成模板。难道你的模板具现化为float之后能够在int数组里查找?)。