返回   cpper编程论坛 > C/CPP/TMP/GP
注册账号 论坛帮助 会员列表 日历事件 搜索 今日新帖 标记版面已读

回复
 
LinkBack 主题工具 显示模式
  #1 (permalink)  
旧 2008-03-08
bankrock 的头像
高级会员
 
注册日期: 2003-12-11
帖子: 843
文章: 7
bankrock 正向着好的方向发展
默认 如何实现template typedef

如果需要对某个模版类进行typedef
代码:
template <typename T> class Pork { public: ....... };
似乎对Pork<T>的typedef方法只有如下?
代码:
template <typename T> class Pork { public: typedef Pork<T> Meat; .... };
可是这么一来还要加个限定符,失去typedef的意义了。各位有什么办法
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #2 (permalink)  
旧 2008-03-11
liuxinyu 的头像
高级会员
 
注册日期: 2006-02-09
帖子: 303
文章: 48
liuxinyu 正向着好的方向发展
默认 回复: 如何实现template typedef

因为当一个模板没有instantiate前它还不是一个type。所以typedef会报错。
我觉得当模板参数太多,造成声明或应用太长时的一个办法是:声明一些缺省模板参数。就像std:tring,它其实是typedef baisc_string<char, allocator=...>那么一长串
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #3 (permalink)  
旧 2008-03-11
polyrandom 的头像
超级版主
 
注册日期: 2002-09-03
帖子: 3,135
文章: 20
polyrandom 正向着好的方向发展
默认 回复: 如何实现template typedef

不要紧,我们还可以在有生之年看到C++0x,里面的template typedef可以解决这个问题。
A Brief Look at C++0x
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #4 (permalink)  
旧 2008-03-11
bankrock 的头像
高级会员
 
注册日期: 2003-12-11
帖子: 843
文章: 7
bankrock 正向着好的方向发展
默认 回复: 如何实现template typedef

看了BS的文章,老子热血沸腾了!

可是转念一想,2005年就0x进入了“决定性的时刻”,现在都快开奥运会了,还没什么大动静,等到新的编译器出来,估计标准都变成1x了
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #5 (permalink)  
旧 2008-03-11
liuxinyu 的头像
高级会员
 
注册日期: 2006-02-09
帖子: 303
文章: 48
liuxinyu 正向着好的方向发展
默认 回复: 如何实现template typedef

C++的类型系统,几乎如同金字塔一般了。对比一些无类型语言,有时我也感到困惑。这么竭尽全力发展的复杂类型系统,仅仅是为了获取速度与静态安全么?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #6 (permalink)  
旧 2008-03-12
polyrandom 的头像
超级版主
 
注册日期: 2002-09-03
帖子: 3,135
文章: 20
polyrandom 正向着好的方向发展
默认 回复: 如何实现template typedef

很大一部分是因为积重难返。C++存在的20多年,语言发生了巨大的变化,但是又都需要尽可能地向下兼容,迟早有一天会发生革命的。
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #7 (permalink)  
旧 2008-03-12
高级会员
 
注册日期: 2002-09-16
帖子: 1,087
文章: 1
SpitFire 正向着好的方向发展
默认 回复: 如何实现template typedef

如果革命,希望新的从c++涅磐的语言应该有哪些特性?

下面这个blog反思了D中的特性
被误解的C++——C++的缺陷和D的缺陷 - longshanks的专栏 - CSDNBlog
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #8 (permalink)  
旧 2008-03-12
cat cat 当前离线
高级会员
 
注册日期: 2003-11-06
帖子: 1,560
文章: 6
cat 正向着好的方向发展
默认 回复: 如何实现template typedef

当年喜欢C++主要是可以做DSL玩, 不过现在发现ruby做起来更爽。
只不过ruby的实现效率好低的说。
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #9 (permalink)  
旧 2008-03-12
Elminster 的头像
超级版主
 
注册日期: 2002-09-09
帖子: 1,763
Elminster 正向着好的方向发展
默认 回复: 如何实现template typedef

引用:
作者: bankrock 查看帖子
看了BS的文章,老子热血沸腾了!

可是转念一想,2005年就0x进入了“决定性的时刻”,现在都快开奥运会了,还没什么大动静,等到新的编译器出来,估计标准都变成1x了
不会啦,有 C++09, C++0A, C++0B ...
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
  #10 (permalink)  
旧 2008-03-12
cat cat 当前离线
高级会员
 
注册日期: 2003-11-06
帖子: 1,560
文章: 6
cat 正向着好的方向发展
默认 回复: 如何实现template typedef

干脆再拖一拖出个完美版C++ 00得了
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
回复时引用此帖
回复

书签

主题工具
显示模式

发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码
Trackbacks are 启用
Pingbacks are 启用
Refbacks are 启用


相似的主题
主题 主题作者 版面 回复 最后发表
自定义stl 常用容器的内存分配 graphicboy C/CPP/TMP/GP 1 2007-05-11 08:53 PM
谁说C++没有foreach? Unsigned C/CPP/TMP/GP 13 2006-07-12 07:17 PM
一个类似DoubleDispatch的实现 哑巴英语 C/CPP/TMP/GP 0 2005-02-04 07:16 PM
看看这个程序~看看他能做什么,技术如何?? Applications 技术杂烩 5 2004-01-26 09:42 PM
typelist又一好文 SpitFire C/CPP/TMP/GP 0 2002-10-22 11:51 AM


所有时间均为格林尼治时间 +9。现在的时间是 08:50 PM


Powered by vBulletin® 版本 3.7.0
版权所有 ©2000 - 2008,Jelsoft Enterprises Ltd.
(C) Copy Right All Right Reserved 2001 - 2007

Search Engine Friendly URLs by vBSEO 3.1.0