【发布时间】:2014-10-30 08:53:55
【问题描述】:
我使用 intel 编译器,因为 intel 并不真正支持 -Wall,所以我使用 -Wremarks 警告...
我有这个简单的代码,它只是制作一个特定的对象..
template<typename... Args_t>
static inline Obj makeObj(Args_t&&... args) {
auto obj = std::make_shared<Obj>(args...); // probably can forward but doesn't matter..
return obj;
}
我明白了:
remark #869: parameter "args" was never referenced
这是一个错误吗?有人看过吗?
【问题讨论】:
-
您确定您的编译器与 C++11 兼容(使用您正在使用的编译器标志)吗?
-
是的,因为它有效。
-
编译器从哪里获得有关 Obj 的信息?它不是您模板的一部分。不仅如此。您的返回类型是 Obj 并且您正在返回 shared_ptr
.
标签: c++ intel compiler-warnings variadic-templates icc