标题:[讨论]关于类模板中的友元
只看楼主
chenchao
Rank: 1
等 级:新手上路
帖 子:45
专家分:0
注 册:2006-5-20
 问题点数:0 回复次数:1 
[讨论]关于类模板中的友元
最近用.net 时发现的问题:当类模板中有友元函数时,类中声明需写成这种形式:
template<class T>
class A
{
.....
template<class T> //这行在6.0中可省略,而.net中不能省略,否则报错!!!!!!!! 注:MSDN中这样写,请问这是标准吗??
friend std::ostream& operator<< (std:ostream& os ,const A<T>& a);
...
}

//定义
template<class T>
std::ostream& operator<< (std:ostream& os ,const A<T>& a)
{
....
}
一个有意思的问题:先在6.0中编写省略template<class T> 的程序,通过后再在.net中运行仍可通过;
而直接在.net中编写省略template<class T> 的程序,则不能通过????????



搜索更多相关主题的帖子: 类模板 std ostream class 
2006-09-17 12:19
corrupt
Rank: 2
等 级:新手上路
威 望:3
帖 子:535
专家分:0
注 册:2004-9-29
得分:0 
vc 6.0 支持的 是不太好..但这些都是编译器的问题...
按照标准是 不省略的好

2006-09-17 20:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-90772-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.974619 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved