【问题标题】:Portable way to use shared_ptr in GCC在 GCC 中使用 shared_ptr 的可移植方式
【发布时间】:2010-07-02 19:52:00
【问题描述】:

GCC 4.1 使用 <tr1/memory> 标头,而 GCC 4.3 使用 <memory> 标头,我需要一种可移植的方式来将 shared_ptr 与 GCC 4.3.2 和 GCC 4.2.1 一起使用,有没有办法做到这一点检查 GCC 版本宏或使用 Boost 等外部库?

【问题讨论】:

标签: c++ gcc shared-ptr tr1


【解决方案1】:

<tr1/memory> 仍然适用于 gcc 4.3。如果您想同时支持这两个版本,只需使用 tr1 名称即可。

【讨论】:

  • 这 tr1 的东西不是应该在某个时候被删除吗?在标准真正获得批准之前,我认为这只是暂时的。
  • @jedhaan - 我一直认为即使 tr1 成为标准,它仍然可以在 tr1 包含文件和命名空间中使用,以实现向后兼容性。
【解决方案2】:

尚未尝试此解决方案,但您可能可以将 tr1 添加到 gcc 命令行(-I 或 -isystem)上的包含目录列表中

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-25
    相关资源
    最近更新 更多