查找指针的类型

Jak*_*ake 7 c++ c++11

我想做这样的事情:

SomeType *y;

/* ... snip ... */

auto x = new decltype(y); // Create a new pointer "x" to a SomeType object.
Run Code Online (Sandbox Code Playgroud)

但是,decltype(y)SomeType*decltype(*y)SomeType&.有没有办法让自己SomeType明白y

Ami*_*ory 9

既然decltype(*y)是参考,你可以使用std::remove_reference:

new std::remove_reference<decltype(*y)>::type;
Run Code Online (Sandbox Code Playgroud)