注册 登录
编程论坛 C++教室

函数模板问题

墨明智 发布于 2008-10-05 20:37, 608 次点击
template <typename Type,int size>
[un]Type min(Type (&r_array) [size])[/un]{
    Type min_val=r_array[0];
    for(int i=1; i<size; ++i)
    {
        if(min_val>r_array[i])
            min_val=r_array[i];
    }
    return min_val;

}

这个模板编译的时候提示
L:\exercise\templateFunc\templateFunc.cpp(7) : error C2265: '<Unknown>' : reference to a zero-sized array is illegal
为什么,size 这个变量不是在模板推演的时候替换的吗?
3 回复
#2
很远的那颗星2008-10-05 22:04
Type min((Type &)r_array [size]){
#3
sunkaidong2008-10-05 23:08
size要指定大小的。。。
#4
中学者2008-10-11 00:48
LZ用的vc6.0???这个用法是没问题的...只是你的编译器对标准的支持还不够~
1