我想知道检查const
成员函数的时间是什么时候?我想它发生在编译时,但不能确定。
有谁知道吗?
答案 0 :(得分:4)
它发生在编译时。在C ++中,几乎所有类型检查都是在编译时完成的。唯一的例外是使用dynamic_cast
。
因此,在编译时检查您的const
成员函数。
答案 1 :(得分:0)
在编译时检查const
成员函数。
答案 2 :(得分:0)
const
会影响this
指针的类型。在编译时检查类型安全性(除非使用强制转换绕过,大多数强制转换旁路安全检查,dynamic_cast
添加运行时检查)。
但是,在大多数架构const
上,ness不仅仅是一种类型检查,而是由内存保护单元强制执行。这在运行时发生,并且不被const_cast
(或C样式转换)绕过。