鱼C论坛

 找回密码
 立即注册
查看: 1519|回复: 10

无法解析外部符号

[复制链接]
发表于 2015-5-11 00:50:40 | 显示全部楼层 |阅读模式
50鱼币
#include "stdafx.h"

#include<iostream>
using namespace std;
template <typename t,typename t1>
void hs(t a[],t1 b);
template <>void hs(char a[],int b);
int main()
{
        char *ip[]={"sadfsdssdf","xcvsa","sdsd","zcxsd","wed"};
        hs(ip,5);                                  // 就是这里的问题,不知道错在哪~~~~~.求解释啊
        cin.get();
        return 0;
}
template<>void hs(char a[],int b)
{
        for(int l=0;l<5;l++)
        {
                cout<<(strlen(a))<<endl;
        }

}

最佳答案

查看完整内容

template void hs(t a[],t1 b); 并没有给出一般性的函数末班定义,仅仅给出了 template void hs(char a[],int b); 特化的函数定义 然而调用的时候 hs(ip,5);这里ip类型并不是char[],而是char*[],这两种类型不能隐式转换,所以必须使用该函数模板的一般性定义,但你没给。。。所以报错。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-5-11 00:50:41 | 显示全部楼层
template <typename t,typename t1>
void hs(t a[],t1 b);
并没有给出一般性的函数末班定义,仅仅给出了
template <>void hs(char a[],int b); 特化的函数定义

然而调用的时候
hs(ip,5);这里ip类型并不是char[],而是char*[],这两种类型不能隐式转换,所以必须使用该函数模板的一般性定义,但你没给。。。所以报错。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-5-13 09:09:53 | 显示全部楼层
#include "stdafx.h"
#include<iostream>
using namespace std;


template <typename t,typename t1>
void hs(t a[],t1 b)
{
        for(int l=0;l<5;l++, a++) // 这里还要让指针向前移动, 才能直到下一个字符串的首地址
                cout<<(strlen(*a))<<endl;
}

int main()
{
        char* ip[]={"sadfsdssdf","xcvsa","sdsd","zcxsd","wed"};
        hs(ip,5);
        cin.get();
        return 0;
}

代码编译通过
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-6 00:27:35 | 显示全部楼层
混鱼币
混鱼币

评分

参与人数 1鱼币 -3 收起 理由
freeparty -3 请不要无意义灌水!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-18 19:27:23 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-19 09:07:14 | 显示全部楼层
!!!

评分

参与人数 1鱼币 -3 收起 理由
freeparty -3 请不要无意义灌水!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-19 11:04:52 | 显示全部楼层
hs(&ip,5);
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-22 00:07:20 | 显示全部楼层
混!!!!

评分

参与人数 1鱼币 -3 收起 理由
freeparty -3 请不要无意义灌水!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-23 16:51:36 | 显示全部楼层
楼主都这么多天了也不知道设置成  已解决

评分

参与人数 1荣誉 +2 鱼币 +2 收起 理由
freeparty + 2 + 2 热爱鱼C^_^

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-6-25 13:12:39 | 显示全部楼层
??

评分

参与人数 1鱼币 -3 收起 理由
freeparty -3 请不要无意义灌水!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-7-8 19:13:20 | 显示全部楼层
你的实参是指针,形参是不能声明为数组模式的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-26 04:48

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表