促进 C++库

……其中一个世界。 赫伯·萨特安德烈亚历山德雷斯库C类++编码标准

这是旧版本Boost的文档。单击此处查看此页面的最新版本。
上一个向上主页下一步

地址

标题<boost/core/addressof.hpp>

作者

  • 布拉德·金
  • 道格拉斯·格雷戈
  • 彼得·迪莫夫
  • 格伦·费尔南德斯

标题<促进/核心/地址.马力>定义函数模板促进::地址.促进::地址(x个)收益地址x个通常情况下,这个地址可以通过以下方式获得&x个,但一元&操作员可能过载。促进::地址避免调用used-defined操作人员&().

促进::地址最初出资人Brad King基于与Doug Gregor讨论的想法。

命名空间 促进
{
    模板< T型> T型* 地址( T型& x个 );
}
#包括 <促进/核心/地址.马力>

结构 无用途类型 { };

 不可寻址 {
    无用途类型 操作人员&() 常数;
};

空隙 (f)() {
    不可寻址 x个;
    不可寻址* 极限功率 = 促进::地址(x个);
    //无法寻址*xpe=&x;/*错误*/
}

在C++11及以上版本中,促进::地址是有条件的常量表达式如果可能的话。这表示为BOOST_CORE_NO_CONSTEXPR_地址未定义。

使用支持的编译器,促进::的地址总是常量表达式通过杠杆作用编译器内部函数。这表示为BOOST_CORE_HAS_BUILTIN_ADDRESSOF系统正在定义。


上一个向上主页下一步