首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

高分!这是一个很牛逼的有关问题奥!跪求大侠赐教

2012-04-14 
高分!!!这是一个很牛逼的问题奥!!!跪求大侠赐教!VC6.0下编译下面的代码居然报错!代码:template typename

高分!!!这是一个很牛逼的问题奥!!!跪求大侠赐教!
VC6.0下编译下面的代码居然报错!

代码:
template <typename A, typename B>
A Cast(const B& a)
{
  return a;
}
int main()
{
  double (*cast)(const int& a) = Cast<double, int>;
  return 0;
}

错误:
F:\谭飞\VC_MyPro\C++\TempDemo\Main.cpp(75) : error C2440: 'initializing' : cannot convert from '' to 'double (__cdecl *)(const int &)'
  None of the functions with this name in scope match the target type
Error executing cl.exe.

TempDemo.exe - 1 error(s), 0 warning(s)

[解决办法]
函数指针赋值,vs2005华丽丽的编过。
[解决办法]
double (*cast)(const int& a) = Cast<double, int>;
函数指针cast不能通过返回A(这里为double型)的Cast来赋值。

另外,double (*cast)(const int& a) = Cast<double, int>;这么写看着不累么?(自己都很容易看晕),最好分开一个个的写吧。
[解决办法]
我用VC6想把C++模板的定义和实现分离,结果连支持的关键字都没有。
楼主用VC6玩Teamplate,小心了!
[解决办法]

探讨
VC6是几个世纪前的东西了,想想你的电脑上还有什么1998年出品的软件?
死抱VC6不放的估计是这样几种人 :

1)初学者,老师要求装VC6 。
2)精神病患者。
3)奥特曼。
4)超级高高手。

[解决办法]
探讨

引用:
VC6是几个世纪前的东西了,想想你的电脑上还有什么1998年出品的软件?
死抱VC6不放的估计是这样几种人 :

1)初学者,老师要求装VC6 。
2)精神病患者。
3)奥特曼。
4)超级高高手。

用VC6怎么了???不要鄙视你自认为瞧不起的东西。
不要夜郎自大,不知有汉
VC6可能在某些标准上不支持,但不能这么评价用vc 6的人啊。
……

[解决办法]
探讨

引用:

引用:
VC6是几个世纪前的东西了,想想你的电脑上还有什么1998年出品的软件?
死抱VC6不放的估计是这样几种人 :

1)初学者,老师要求装VC6 。
2)精神病患者。
3)奥特曼。
4)超级高高手。

用VC6怎么了???不要鄙视你自认为瞧不起的东西。
不要夜郎自大,不知有汉
……

[解决办法]
我最近两年用了大量这种惯用法,不过都是在2005/2008/2010上编译的。

按理说,vc6没有必要不让这个通过呀。

[解决办法]
探讨
VC6.0下编译下面的代码居然报错!

代码:
template <typename A, typename B>
A Cast(const B&amp; a)
{
return a;
}
int main()
{
double (*cast)(const int& a) = Cast<double, int>;
return 0;
}

错误……

[解决办法]
VC6对泛型编程支持很差,换工具吧。
[解决办法]
C/C++ code
template <typename A, typename B>A Cast(const B& a){  return a;}int main(){  double (*cast)(const int& a) = Cast<double, int>;  return 0;}
[解决办法]
vs 2010
vs 2005
vs 2008 都可以

热点排行
Bad Request.