- 主题:请教1个关于模版类中的嵌套模版类的成员
看到你回复我就放心了,我也没看懂想问啥。哈哈
【 在 fanci 的大作中提到: 】
: 请把xxx写全不然不知道你想问什么
--
FROM 1.86.58.*
这个问题你要弄懂,估计得分三小点各个击破:
1 开头的typename 是模板的语法约束,告诉编译器接下来是个类型
2 std库里traits的概念。以及traits里定义value 、type 的常规手法
3 allocator的实现手法,也是std库基础设施。string vector里都要用。
1和2,Effective cpp里最后一部分,Item 50以后吧,有讲。
3的话,估计得看源码剖析类文章和书。查查侯捷的《Stl源码剖析》
公司培训时请他来讲过“内存分配”专题,提到过allocator的套路。
模糊记得rebind就是为了实现类型传递,把string的T,告诉allocator。
因为不是那课的重点,没关注。当时重点是讲把free list,挂上各种尺寸的内存类型块,以及回收。
实在没搞懂你想问啥。网上有篇“如何提问”,你搜下看看。对长期做程序员
有帮助。
【 在 xingco123 的大作中提到: 】
: xxx是模板类型简称
--
修改:DoorWay FROM 1.86.58.*
FROM 1.86.58.*
送佛送到西,反正周末也是闲着,提问的智慧:
http://dockone.io/m/article/813
【 在 xingco123 的大作中提到: 】
: 在c++标准库中basic_string.h, 有如下别名:
: typedef typename __gnu_cxx::__alloc_traits<_Alloc>::template
: rebind<_CharT>::other _Char_alloc_type;
: ...................
--
FROM 1.86.58.*
对,是这样的,不需要弄懂的。“观其大略”,知道意图,就能读懂
这里形式上的意思了。你补充的很好,我是不知道咋传给他这意思:-D
【 在 here080 的大作中提到: 】
: 2和3其实不需要清楚也能看懂形式上的意思。
: 具体的东西可以需要理解时慢慢看。
:
--
FROM 1.86.58.*