【发布时间】:2018-01-03 02:15:09
【问题描述】:
我正在编写一个实用程序类来“unwrap”std::reference_wrapper,但我对这意味着什么有点矛盾。
boost::unwrap_reference<T>::type 被定义为U(其中T 是std::reference_wrapper<U>),但这似乎违反直觉。如果 reference_wrapper 旨在“包装”引用,那么我希望“unwrapped”reference_wrapper成为引用 .
诚然,这个问题可能会引起意见或猜想,但有什么理由更喜欢U 而不是U& 作为未包装的type(除了遵循boost 模型)?是否有任何技术报告详细说明 boost::unwrap_reference 可能为 boost 的模型提供基本原理?
【问题讨论】:
标签: c++ boost reference-wrapper