想象在 C++ 中有两个类,一个命名derived
,另一个命名base
为第一个的基类。如果我有以下代码,这是首选:
base *b = init_value_here;
const derived *d = static_cast<derived *>(b);
或者
base *b = init_value_here;
const derived *d = static_cast<const derived *>(b);
换句话说,const
由于编译器可以提升为常量,因此在不需要时排除在静态强制转换中是否更好,或者最好将其包括在内以放宽对它的限制,b
以便const
将来更容易制作?