当前位置: 首页 > news >正文

电影网站建设湛江建设培训学校网站

电影网站建设,湛江建设培训学校网站,有不收费的网站,wordpress上传到又拍云1.概要 c提供如下几种转换#xff0c;具体如下。 static_cast#xff1a;用于非多态类型的转换。 dynamic_cast:用于多态类型的转换#xff0c;主要用于向下类型转换#xff08;从基类指向派生类的指针/引用#xff09;#xff0c;会检查转换的有效性#xff0c;如果转…1.概要 c提供如下几种转换具体如下。 static_cast用于非多态类型的转换。 dynamic_cast:用于多态类型的转换主要用于向下类型转换从基类指向派生类的指针/引用会检查转换的有效性如果转换不安全则无法进行转换。 const_cast:用于去除const或volatile属性。 reinterpret_cat:允许所有指针转换为其他指针类型。并允许任何整型转换为任何指针类型反之亦然。 我这里只针对reinterpret_cat的转换进行实验因为前三种用起来很简单也很明确似乎都没有什么明显的价值。 实验结果如下 基本的结论就是reinterpret_cat转换就是你如果想转我就给你转对象的赋值就是安装内存的面积赋值其他的我都不管。至于有什么价值就根据自己需要的场景使用吧比如无法用面向对象来多态那么用这个方法也许能起到一些特殊的效果。 2.代码 #include iostream using namespace std;//名称和变量的转换有什么差别 namespace test1 {class A{public:int a0;void fun() {cout A fun a: a \n;}};class B{public:int a1;void fun() {cout B fun a: a \n;}};void test() {cout ------------------------------------------\n;A* a new A();B* b reinterpret_castB*(a);b-fun();/** 执行结果使用A的变量使用B的函数B fun a:0 Hello World!*/} } //不同的变量能否转换成功可以匹配 namespace test2 {class A{public:int a 2;void fun() {cout A fun a: a \n;}};class B{public:int b 1;void fun() {cout B fun a: b \n;}};void test() {cout ------------------------------------------\n;A* a new A();B* b reinterpret_castB*(a);b-fun();/** 执行结果使用A的变量使用B的函数* 虽然变量名不同了因为变量只有一个且类型相同那么可以匹配* B fun a:2 */} } //变量类型不同是否匹配不匹配 namespace test3 {class A{public:int a 2;void fun() {double d a;cout A fun a: d \n;}};class B{public:double b 1;void fun() {cout B fun a: b \n;}};void test() {cout ------------------------------------------\n;A* a new A();a-fun();B* b reinterpret_castB*(a);b-fun();/** 结果* A fun a:2* B fun a:-7.84591e298* 变量如果类型不同就无法匹配但是结果又不像是B类的b(1)* 那么问题的原因有可能是安装内存的区域拷贝数据了A拷贝给B所以造成B.b不是1*/} } namespace test4 {class A{public:char a 1;char b 2;};class B{public:char b[2] { 3,4 };void fun() {for (size_t i 0; i 2; i){cout (int)b[i];}cout endl;}};void test() {cout ------------------------------------------\n;A* a new A();B b;b.fun();try{B* b reinterpret_castB*(a);b-fun();}catch (const std::exception e){cout yichang endl;}/** 结果* 34* 12* 从结果看证实了上面的猜测对象的变量是安装内存拷贝的* 那也就是从这个使用得到最终的结果reinterpret_cast类中转换是安装内存的位置匹配的和变量的名称类型都没有关系。只有内存的位置匹配就可以安装这个原则拷贝*/} } //试一试A的内存多与B的情况 namespace test5 {class A{public:int a 1;int b 2;};class B{public:int a3;void fun() {cout a endl;}};void test() {cout ------------------------------------------\n;A* a new A();B b;b.fun();try{B* b reinterpret_castB*(a);b-fun();}catch (const std::exception e){cout yichang endl;}/** 结果* 3* 1* 从结果看B安装自己需要的内存位置有A的内存中获取*/} } namespace test6 {class A{public:int a 1;};class B{public:int a 2;int b 3;void fun() {cout a endl;cout b endl;}};void test() {cout ------------------------------------------\n;A* a new A();B b;b.fun();try{B* b reinterpret_castB*(a);b-fun();}catch (const std::exception e){cout yichang endl;}/** 结果* 2* 3* 1 //由a获取* -33686019 //未知的值不确定是由A获取的还是默认的初始值。但这部分我认为如果保持B的默认值3应该是更好的* 从结果看B安装自己需要的内存位置有A的内存中获取*/} }int main() {test1::test();test2::test();test3::test();test4::test();test5::test();test6::test();std::cout Hello World!\n; } 3.运行结果 ------------------------------------------ B fun a:0 ------------------------------------------ B fun a:2 ------------------------------------------ A fun a:2 B fun a:-7.84591e298 ------------------------------------------ 34 12 ------------------------------------------ 3 1 ------------------------------------------ 2 3 1 -33686019
http://www.zqtcl.cn/news/918548/

相关文章:

  • 医疗器械网站建设方案南京网站制作系统
  • 小网站托管费用企查宝企业查询
  • 专门做特卖的网站是什么外国炫酷网站网址
  • 学习网站的建设wordpress批量拿shell
  • 中企动力做的网站推软件
  • 北京财优化沧州seo公司
  • 收到网站代码后怎么做啥是东莞网站优化推广
  • 重庆商城网站开发网站建设中英版
  • 免费企业网站开发给酒吧做网站
  • 想用自己电脑做服务器做个网站吗网站制作工作室哪家比较好
  • 这样建立网站vs2008做网站
  • 做网站创业故事好看大方的企业网站源码.net
  • 做家常菜哪个网站最好香蜜湖附近网站建设
  • 网站index.php被修改seo网络推广经理招聘
  • 南京做网站联系南京乐识网站建设培训福州
  • 比较冷门的视频网站做搬运网站建设 分析
  • 网站开发实习计划模板有做数学题的网站吗
  • 汕头 网站网页设计图片轮播切换
  • 免费ui网站美橙网站设计
  • 网站建设 海口哪里有网站设计公司
  • 广西建设监理协会官方网站网站建设的需求文档
  • 网站后台怎么做飘窗wordpress add_theme_page
  • 网站建设哪家信誉好网店美工具体要求
  • 网站管理建设工作wordpress 媒体库 直链
  • 网站备案是域名备案还是空间备案wordpress注册数学验证
  • 网站的种类有哪些怎么做代理人金沙网站
  • 西城顺德网站建设网站开发网上教学
  • 公司网站成本百度制作公司网页
  • 政务网站建设情况汇报网线制作的标准
  • 天空网站开发者wordpress 用户登陆后跳转到首页