1. <small id='U9XNJ'></small><noframes id='U9XNJ'>

          <bdo id='U9XNJ'></bdo><ul id='U9XNJ'></ul>
        <tfoot id='U9XNJ'></tfoot>

        <legend id='U9XNJ'><style id='U9XNJ'><dir id='U9XNJ'><q id='U9XNJ'></q></dir></style></legend>
        <i id='U9XNJ'><tr id='U9XNJ'><dt id='U9XNJ'><q id='U9XNJ'><span id='U9XNJ'><b id='U9XNJ'><form id='U9XNJ'><ins id='U9XNJ'></ins><ul id='U9XNJ'></ul><sub id='U9XNJ'></sub></form><legend id='U9XNJ'></legend><bdo id='U9XNJ'><pre id='U9XNJ'><center id='U9XNJ'></center></pre></bdo></b><th id='U9XNJ'></th></span></q></dt></tr></i><div id='U9XNJ'><tfoot id='U9XNJ'></tfoot><dl id='U9XNJ'><fieldset id='U9XNJ'></fieldset></dl></div>

        可以对内置类型使用 C 风格的强制转换吗?

        Is it OK to use C-style cast for built-in types?(可以对内置类型使用 C 风格的强制转换吗?)
        <i id='lMy2k'><tr id='lMy2k'><dt id='lMy2k'><q id='lMy2k'><span id='lMy2k'><b id='lMy2k'><form id='lMy2k'><ins id='lMy2k'></ins><ul id='lMy2k'></ul><sub id='lMy2k'></sub></form><legend id='lMy2k'></legend><bdo id='lMy2k'><pre id='lMy2k'><center id='lMy2k'></center></pre></bdo></b><th id='lMy2k'></th></span></q></dt></tr></i><div id='lMy2k'><tfoot id='lMy2k'></tfoot><dl id='lMy2k'><fieldset id='lMy2k'></fieldset></dl></div>

          <small id='lMy2k'></small><noframes id='lMy2k'>

            <tbody id='lMy2k'></tbody>
          <legend id='lMy2k'><style id='lMy2k'><dir id='lMy2k'><q id='lMy2k'></q></dir></style></legend>
          • <bdo id='lMy2k'></bdo><ul id='lMy2k'></ul>
            <tfoot id='lMy2k'></tfoot>

                  本文介绍了可以对内置类型使用 C 风格的强制转换吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  在这里阅读了很多关于 C++ 中 C 风格转换的答案后,我还有一个小问题.我可以对像 long x=(long)y; 这样的内置类型使用 C 风格的转换吗?或者它仍然被认为是坏的和危险的?

                  After reading here a lot of answers about C-style casting in C++ I still have one little question. Can I use C-style casting for built-in types like long x=(long)y; or it's still considered bad and dangerous?

                  推荐答案

                  我不会,原因如下:

                  • 演员表很难看,应该很难看并且在您的代码中脱颖而出,并且可以使用 grep 和类似工具找到.
                  • 始终使用 C++ 强制转换"是一条简单的规则,比对用户定义的类型使用 C++ 强制转换,但对内置类型使用 C 风格的强制转换也可以"更容易记住和遵循."
                  • C++ 风格的强制转换为其他开发者提供了更多关于强制转换的必要性的信息.
                  • C 风格的转换可能会让你做你不想要的转换——如果你有一个接受 (int*) 的接口,并且你使用 c 风格的转换来传递一个 const int*,并且接口进行长时间* 的更改,您使用 c 样式转换的代码将继续工作,即使它不是您想要的.

                  这篇关于可以对内置类型使用 C 风格的强制转换吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                  相关文档推荐

                  Constructor initialization Vs assignment(构造函数初始化 Vs 赋值)
                  Is a `=default` move constructor equivalent to a member-wise move constructor?(`=default` 移动构造函数是否等同于成员移动构造函数?)
                  Has the new C++11 member initialization feature at declaration made initialization lists obsolete?(声明时新的 C++11 成员初始化功能是否使初始化列表过时了?)
                  Order of constructor call in virtual inheritance(虚继承中构造函数调用的顺序)
                  How to use sfinae for selecting constructors?(如何使用 sfinae 选择构造函数?)
                  Initializing a union with a non-trivial constructor(使用非平凡的构造函数初始化联合)

                    <bdo id='48KGr'></bdo><ul id='48KGr'></ul>

                    <i id='48KGr'><tr id='48KGr'><dt id='48KGr'><q id='48KGr'><span id='48KGr'><b id='48KGr'><form id='48KGr'><ins id='48KGr'></ins><ul id='48KGr'></ul><sub id='48KGr'></sub></form><legend id='48KGr'></legend><bdo id='48KGr'><pre id='48KGr'><center id='48KGr'></center></pre></bdo></b><th id='48KGr'></th></span></q></dt></tr></i><div id='48KGr'><tfoot id='48KGr'></tfoot><dl id='48KGr'><fieldset id='48KGr'></fieldset></dl></div>
                    • <small id='48KGr'></small><noframes id='48KGr'>

                        <tfoot id='48KGr'></tfoot>
                          <tbody id='48KGr'></tbody>
                        <legend id='48KGr'><style id='48KGr'><dir id='48KGr'><q id='48KGr'></q></dir></style></legend>