我正在为 inner_t 类型的类编写一个包装类。我可以通过以下方式为内部类调用正确的构造函数(左值引用或右值引用)吗?
template<typename S, typename T>
struct u_ref {
};
template<typename S>
struct u_ref<S, const S&> {
typedef const S& type;
};
template<typename S>
struct u_ref<S, S&&> {
typedef S&& type;
};
class wrapper_t {
private:
inner_t data;
public:
template<typename T>
wrapper_t(typename u_ref<inner_t,T>::type c_data):
data(std::forward(c_data)) {
}
}