当前位置:  开发笔记 > 编程语言 > 正文

wtf是WTF?(在WebKit代码库中)

如何解决《wtf是WTF?(在WebKit代码库中)》经验,为你挑选了2个好方法。

我下载了Chromium的代码库并运行了WTF命名空间.

namespace WTF {
    /*
     * C++'s idea of a reinterpret_cast lacks sufficient cojones.
     */
    template
    TO bitwise_cast(FROM in)
    {
        COMPILE_ASSERT(sizeof(TO) == sizeof(FROM), WTF_wtf_reinterpret_cast_sizeof_types_is_equal);
        union {
            FROM from;
            TO to;
        } u;
        u.from = in;
        return u.to;
    }
} // namespace WTF

这是否意味着我的意思?可能是这样,bitwise_cast如果POD中的任何一个TOFROM不是POD并且不是(AFAIK)比内置的C++更强大,那么这里指定的实现将不会编译reinterpret_cast.

我在这里看到的唯一亮点就是没有人似乎bitwise_cast在Chromium项目中使用.



1> ismail..:

它是W eb T emplate F ramework的简称,它提供了遍布WebKit代码库的常用功能.


如"每日网页模板框架?"
就像在C++模板中做常见的东西:)

2> 小智..:

这是为了避免严格别名优化问题:

gcc,严格别名,并通过联合进行转换

推荐阅读
Gbom2402851125
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有