【发布时间】:2013-04-14 09:33:18
【问题描述】:
在 C++ 中,Type ** 到 Type const ** 的转换是被禁止的。此外,不允许从derived ** 转换为Base **。
为什么这些转换是 wtong ?还有其他不能发生指针转换的例子吗?
有没有办法解决:如何将指向Type类型的非常量对象的指针转换为指向Type类型的const对象的指针,因为Type **--> Type const ** 不成功?
【问题讨论】:
-
为什么应该被允许?一般情况下,您不能将
U*转换为W*,因为这没有任何意义... -
我想在两个转换禁令之间画平行线,这不是你提到的线程的重点。 WIM,我在问其他的转换禁令有什么相似之处。
-
重复的 Q 在 C 中,而不是 C++。但是 C++ 只是收紧了类型系统规则,所以禁令仍然是出于同样的原因。
标签: c++ pointers type-conversion