以下语法是什么意思?
typedef void* hMyClass; //typedef as a handle or reference
hMyClass f = &something;
const MyClass& foo = static_cast<MyClass&>(*f);
foo.bar();
最佳答案
static_cast意味着系统实际上并不会尝试确保从一种引用类型转换为另一种引用类型时,所转换的对象实际上是目标类型的实例(与动态强制转换不同)。
因此,您告诉编译器您足够聪明,可以知道hMyClass中包含的地址实际上是来自MyClass实例的地址,并且您对如果发生的不可预测的事情负有全部责任。错了。
您的“东西”是什么类型?您在那里也可能有错误。您可能想要一些东西。
关于c++ - C++语法问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/745757/