【发布时间】:2012-02-21 10:05:04
【问题描述】:
智能指针是下面的指针,那么有什么方法可以将函数的 shared_ptr 参数定义为不为另一个 shared_ptr 或其他任何类型的指针起别名?
或者,出于某种原因,这是不必要的吗?
我关心 gcc >=4.2 和 llvm-clang >=2.0 编译器(其他编译器的答案也很有趣)。
【问题讨论】:
-
C++ 没有任何
restrict或__restrict__关键字。如果您要询问特定编译器中的语言扩展,您需要说出是哪个。 -
@BenVoigt 抱歉 - 在编辑中澄清。
-
似乎不太可能想要处理受限指针的函数想要声明指针的共享所有权。更不用说在共享所有权的系统中,您最终会知道指针确实是不同的。无论如何,我猜你的函数 actualky 想要使用 [restricted] 指针而不是
std::shared_ptr<T>s。
标签: c++ g++ clang shared-ptr restrict-qualifier