比方说,我有一个std::any
在其中存储类型T。是否可以创建另一个包含std::any
类型的std::reference_wrapper<const T>
?喜欢
std::any original = std::string("Test string");
std::any reference;
// Magic here
auto ref = std::any_cast<std::reference_wrapper<const std::string>>(reference); // Works
最佳答案
这是不可能的,除非您知道确切的存储类型(请参见其他答案),或者可能的类型列表(在这种情况下,您可以switch
而不是original.type()
)。
关于c++ - 是否可以从std::any使用std::reference_wrapper创建std::any?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59652121/