【发布时间】:2013-03-21 14:00:10
【问题描述】:
我不认为“到位”是正确的术语,但我缺少一个更好的术语。
我有一个 POD,比如说:
struct My {
int a;
};
//and suppose a operator<< to stream is also defined
我可以这样使用它:
My my = {3};
std::cout << my << std::endl;
我想知道我是否可以在下面做同样的事情,但不使用辅助函数:
template <typename ANY>
My helper(ANY value) {
My r = {value};
return r;
}
std::cout << helper(3) << std::endl;
我正在寻找与构造函数相同的东西,但由于我有一个 POD,我无法创建构造函数。
【问题讨论】:
-
@sftrabbit 太糟糕了,msvc 缺乏对 C++11 的良好支持。我讨厌使用 msvc。
-
关于“就地初始化”,我认为你的意思是“aggregate initialization”。