Redian新闻
>
C++ template function一个问题
avatar
g*u
2
想打印一个STL container里的元素,但不知道是哪种container,应该怎么写?写成下
面的G++编译不通过,VC8可以。
template
void printContainer(ostream& os, const T& con)
{
T::const_iterator iter = con.begin();
while(iter != con.end())
{
os<iter++;
}
os<}
avatar
j*7
3
d
avatar
y*g
4

加上 typename

【在 g*****u 的大作中提到】
: 想打印一个STL container里的元素,但不知道是哪种container,应该怎么写?写成下
: 面的G++编译不通过,VC8可以。
: template
: void printContainer(ostream& os, const T& con)
: {
: T::const_iterator iter = con.begin();
: while(iter != con.end())
: {
: os<: iter++;

avatar
y*g
6
也可以用for_each

【在 g*****u 的大作中提到】
: 想打印一个STL container里的元素,但不知道是哪种container,应该怎么写?写成下
: 面的G++编译不通过,VC8可以。
: template
: void printContainer(ostream& os, const T& con)
: {
: T::const_iterator iter = con.begin();
: while(iter != con.end())
: {
: os<: iter++;

avatar
a*n
8
How about use copy?
template
void printContainer(ostream& os,const T& con)
{
ostream_iterator out(os," ");
copy(con.begin(), con.end(),out);
}
avatar
w*l
10
马丁数数真不错。我也记得

【在 yb 的大作中提到】
: 这个当然记得了
: 还有马丁叔叔也记得

avatar
i*y
11
哈哈,都记得。还有神探亨特,高楼轶事

【在 yb 的大作中提到】
: 这个当然记得了
: 还有马丁叔叔也记得

avatar
H*H
12
记得
当时很害怕看这片子,不知道为什么。
看了以后很怕游泳。
avatar
y*u
13
小时候的Favorite, 谢谢分享。
相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。