c – 为什么和什么时候被转换为char volatile和需要?

前端之家收集整理的这篇文章主要介绍了c – 为什么和什么时候被转换为char volatile和需要?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
boost::detail::addressof_impl::f()年,一系列的reinterpret_cast完成以获得对象的实际地址,以防类别T超载运算符&():
template<class T> struct addressof_impl
{
    static inline T* f( T& v,long )
    {
        return reinterpret_cast<T*>(
            &const_cast<char&>(reinterpret_cast<const volatile char&>(v)));
    }
}

对于const volatile char&而不是只是铸造char&

解决方法

直奔焦炭如果T有const或volatile限定符,则会失败 – reinterpret_cast不能删除这些(但可以添加它们),const_cast不能进行任意类型更改.
原文链接:https://www.f2er.com/c/115793.html

猜你在找的C&C++相关文章