您的位置首页 >自媒体 >

static_cast和强制转换的区别(static_cast)

导读 大家好,小蜜来为大家解答以上问题。static_cast和强制转换的区别,static_cast很多人还不知道,现在让我们一起来看看吧!编译static_cast

大家好,小蜜来为大家解答以上问题。static_cast和强制转换的区别,static_cast很多人还不知道,现在让我们一起来看看吧!

编译static_cast时,使用类型信息来执行转换,并在转换过程中执行必要的检测(如指针越界计算和类型检查)。它的操作数相对安全。

类似于function (int)和其他强制转换。但是还有一些更必要的检查机制。

int a=1;

void * p=a;

cout *(int *)p;

cout *static_cast(p);一样的效果。但如果是cout *static_cast(P);您将报告一个错误。但是双a=1.2同样,如上所述,它将是正确的。因为double可以转int,只是一个错误。语法是正确的。

本文到此结束,希望对大家有所帮助。

标签:

免责声明:本文由用户上传,如有侵权请联系删除!