永发信息网

c++ 用模板的方法求数组的之和

答案:1  悬赏:40  手机版
解决时间 2021-07-26 14:54

c++ 用模板的方法求数组的之和,下面是我的代码:

#include<iostream.h>
template <typename T>
T fun(T *a,int n)
{
T sum=0,a[n];
for(int i=0;i<n;i++)
sum+=a[i];
return sum;
}
const int N=3;
template <typename T>
void main()
{
T a[N];
cout<<"输入数组:"<<endl;
for(int i=0;i<N;i++)
cin>>a[i];
cout<<"数组之和为:"<<fun(a,N)<<endl;
}

编译能通过,运行就出现错误了,错误提示如下:error LNK2001: unresolved external symbol _main

fatal error LNK1120: 1 unresolved externals

哪位高手帮忙解决下啊,感激不尽。。。。

最佳答案
抱歉,刚才回答有误

main函数不能加template

否则需要被实例化

没有被编译器推演出来之前,你的代码里是不会有main的

所以,去掉main的template就ok

改正的代码:

#include<iostream.h>
template <typename T>
T fun(T *a,int n)
{
T sum=0;
for(int i=0;i<n;i++)
sum+=a[i];
return sum;
}
const int N=3;

void main()
{
int a[N];
cout<<"输入数组:"<<endl;
for(int i=0;i<N;i++)
cin>>a[i];
cout<<"数组之和为:"<<fun(a,N)<<endl;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
找排前50的地下城与勇士问问团队加入 本人排
浅蓝色跟什么颜色搭配,什么颜色搭配淡蓝色
有什么可以除去狗狗带给家里异味的安全用品吗
摔到了头怎么办?
如何令女孩子开心
我的宝宝嗡嗡等级1熟练5玩两天找茬都没发过技
舞蹈模式怎么设制难度?
仙剑奇侠3的背景【纯】音乐有那些?随便推荐
什么是百分百男友
誰那有CS1.6帶加電腦的
海尔品牌机开不了机了 显示 — 符号?
为什么大部人不知道有潮州市
桌面快捷方式所指向的项目被病毒更改或移动,
摩天大楼讲的是什么,电影摩天大楼讲的什么怎
请问一下幼猫能不能喝鲜牛奶啊?
推荐资讯
Jquery里提供的方法只能被使用于被选择器直接
幻灵附魔石什么时候开能开出好东西
滔滔的图标怎样亮
劲舞团5.6怎么卡人妖啊??
怎么在网上免费充扣币?
十四岁早恋对吗?
常州哪里有比较值得信赖的纹身的地方啊
谁知道这是什么小游戏?
为什么桌面上没用的东西不能删除,总弹出一个
世界最矮的山脉
眼线液好用还是眼线膏,新手画眼线 用眼线笔还
如何开保洁公司,我想开一家保洁公司,需要多少
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?