【发布时间】:2013-03-13 12:23:59
【问题描述】:
正如在 http://en.cppreference.com/w/cpp/memory/pointer_traits 和相关网站上看到的(也是 boost intrusive 的 boost 实现),pointer_traits 不是专门针对 T*const 的。这是为什么呢?
【问题讨论】:
-
我会说因为它适用于您存储指针的变量,而不是逻辑指针实体本身。指针的属性/特征如何存储它并不重要。
-
我认为这对于重新绑定尤其必要,
std::pointer_traits<T*>::rebind<void>应该保留T的常量,即根据T赋予void*或void const*。