boost::ref

参考链接:https://www.boost.org/doc/libs/1_66_0/libs/core/doc/html/core/ref.html

用法

主要用于函数对象用作参数时会出现:

  1. 拷贝代价过高(具有复杂的内部状态)
  2. 不希望拷贝对象(内部状态不应该改变)
  3. 禁止进行对象拷贝(noncopyable、单件)
    这是需要用其引用。
namespace boost {
  template<typename T> class reference_wrapper;

  template<typename T> struct is_reference_wrapper;
  template<typename T> struct unwrap_reference;
  template<typename T> reference_wrapper< T > const ref(T &);
  template<typename T> reference_wrapper< T const  > const cref(T const &);
  template<typename T> void ref(T const &&);
  template<typename T> void cref(T const &&);
  template<typename T> unwrap_reference< T >::type & unwrap_ref(T &);
}
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页