我正在阅读documentationforstd::any_cast我觉得很奇怪,API让转换要么返回一个值给持有的对象,要么返回一个指向它的指针。为什么不返回引用?每次使用非指针类型参数调用函数时都需要创建一个拷贝。我可以看到指针版本的转换可能更能表明意图,也可能更清晰,但为什么不让返回值成为这样的引用呢?templateValueType&any_cast(any*operand);代替templateValueType*any_cast(any*operand);此外,即使您请求引用,强制转换也会删除引用并将拷贝返回到存储的对象,请参阅此处对函数重载1-3的返回值的解释http: