template_2
发表于:2007-05-26来源:作者:点击数:
标签:
learn template step by step2
类似地如果一个指针或引用指向一个类模板实例那么只有当检查这个指针或引用所指的那个对象时类模板才会被实例化。在前面定义的函数foo()中如果指针pqi 被解引用 qi 被用来获得它指向的对象值或者pqi 或qi 被用来访问Queue的数据成员或成员函数时,Queue才会被实例化。
void foo( Queue &qi )
{
Queue *pqi = &qi;
// 因为成员函数被调用, 所以 Queue 被实例化
pqi->add( 255 );
// ...
}
编译器必须在foo()调用Queue类的成员函数add()之前先知道Queue类的定义。
原文转自:http://www.ltesting.net
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-