T*******x 发帖数: 8565 | 1 c++中 member type 就是为了stl设计的吧?看起来挺头大的。
比如vector::iterator。
为什么不设计成这样:iterator>,
这样是不是就可以免去了member type?
typename这样的keyword也可以不要了。
而且template有了统一简单的格式:
template
class A {
};
就是最基本的C++ class定义,除了多几个参数类型。
这样设计有什么问题吗? |
N***m 发帖数: 4460 | 2 guess diffeetn containers have different requirements on iterators?
so better be class method?
【在 T*******x 的大作中提到】 : c++中 member type 就是为了stl设计的吧?看起来挺头大的。 : 比如vector::iterator。 : 为什么不设计成这样:iterator>, : 这样是不是就可以免去了member type? : typename这样的keyword也可以不要了。 : 而且template有了统一简单的格式: : template : class A { : }; : 就是最基本的C++ class定义,除了多几个参数类型。
|
h****8 发帖数: 599 | 3 那你如何阻止别人写 iterator >呢 换句话说你要在模板定义中根据实际的
class来区别4种iterator type
【在 T*******x 的大作中提到】 : c++中 member type 就是为了stl设计的吧?看起来挺头大的。 : 比如vector::iterator。 : 为什么不设计成这样:iterator>, : 这样是不是就可以免去了member type? : typename这样的keyword也可以不要了。 : 而且template有了统一简单的格式: : template : class A { : }; : 就是最基本的C++ class定义,除了多几个参数类型。
|
z*j 发帖数: 42 | 4 very insightful!
【在 h****8 的大作中提到】 : 那你如何阻止别人写 iterator >呢 换句话说你要在模板定义中根据实际的 : class来区别4种iterator type
|