CPP Templates 之 ADL应用举例
摘要:
ADL应用举例:1.友元名称插入:在类中的友元函数声明可以是该友元函数的首次声明,请参见下面的例子:template<typename T>class C{ ... friend void f(); friend void f(C<T> const&);};void g(C<int>* p){ f();//error f(*p);//ok}通常而言,友元声明在外围(类)作用域中是不可见的如果友元函数所在的类属于ADL的关联类集合,那么我们这个外围类是可以找到该友元声明的。2.插入式类名称如果在类本身的作用域中插入该类的名称,我们就称该名称为插入式类名 阅读全文
posted @ 2009-11-07 22:25 ATAK 阅读(286) 评论(0) 推荐(0) 编辑