1.static_cast
说明:
值将会转换成类型1的类型
static_cast不做任何检查
2.const_cast
说明:
3.reinterpret_cast
说明:
4.dynamic_cast
说明:
静态编译:
(就是一般意义上使用函数名和函数参数调用函数的过程)
动态编译:
在运行过程中确定调用的函数
根据虚表找到函数调用,比较灵活
(由于存在多个函数重名的情况,所以需要根据具体情况判断使用哪个函数的过程)
说明:
可以选择性的使用智能指针,帮忙管理内存
智能指针只能用来管理一个对象
const:
static:
static修饰的成员变量是类的公有成员,必须在类外进行初始化操作
static修饰的成员函数?????
#include<iostream>
#include"father.h"
#include<memory>
using namespace std;
int main()
{
//stati_cast关键字
cout << static_cast<int>(3.14) << endl;
//const_cast关键字
const int x = 10;
int *p = const_cast<int*>(&x);
//reinterpret_cast关键字
const int x1 = 10;
int y = reinterpret_cast<int>(&x);
//dynamic_cast关键字-检查多态中父类和子类指针的应用是否安全
son* p2 = dynamic_cast<son*> (new father);//如此给子类申请父类的内存会存在越界风险
//智能指针
{
auto_ptr<father> point(new father);
}
cin.get();
return 0;
}
文章浏览阅读1k次。关于各类Python安装软件之间的关系(Python, Anaconda, Jupyter notebook和Pycharm)Python这里说的Python,就是最原生的Python,是我们学习Python所需要的最基本的环境。就像学习Java需要安装JDK一样。Python可以到Python官网(https://www.python.org/downloads/)下载对应版本,使用“下一步”进行安装,然后配置环境变量;接着就可以计事本里编写python代码程序,并到终端编译运行。上述过程与初学_jupyter,pycharm和python的关系
文章浏览阅读4.5k次。一、安装说明。 为了方便安装我在安装Redhat3.0时选了apache、php、mysql,注意mysql-devel开发包一定要装上, 二、安装ucspi-tcp-0.88 1.这是由于redhat3.0(包括redhat 9.0)的glibc的版本有问题,必须有下列软件及补丁才能编译 http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gzhttp://
文章浏览阅读7.2k次,点赞3次,收藏43次。我们经常听这样的描述,数据呈现上升/下降/无明显趋势,这个结论大都是靠人眼观察出来的,往往不够严谨。我们需要更科学的方法,下面就借助非参里的符号检验,来谈谈检验趋势存在性的两种常用方法。Cox-Stuart趋势检验原理对于数据序列x1,x2,x3,……,xn,我们以位置中间数c为界把该序列分成两部分,并两两配对成(x1,xc+1),(x2,xc+2),……(xc,xn)的形式。接着我们以每一组中后一个数减去前一个数并记下正负性,s+表示得到正数的个数,s-表示得到负数的个数。如果s+远远大于s
文章浏览阅读62次。
文章浏览阅读701次。在第2部分里介绍了Hotspot中的堆结构、对象分配以及次要回收。Hotspot中的堆结构理解不同的收集器的工作方式,是探讨Java堆结构如何支持分代机制的最好的方式。伊甸区(Eden)的大部分对象都是刚刚被分配的。幸存区(survivor)用来临时存储那些从伊甸区里幸存下来的对象。当我们讨论完次要回收(minor collections)后将描述幸存区的用途。伊甸区和幸存区统称为“年
文章浏览阅读305次。本文是计算机科学家Christoph Rasche撰写的一份计算机视觉方面的系列教程,从传统的图像处理、特征提取到近几年很热的深度神经网络,以及深度学习方法在目标检测、图像检索、图像分割、目标跟踪等一系列前沿的介绍。书本里本文是计算机科学家Christoph Rasche撰写的一份计算机视觉方面的系列教程,从传统的图像处理、特征提取到近几年很热的深度神经网络,以及深度学习方法在目标检测、图像检索、..._本文是计算机科学家christoph rasche撰写的一份计算机视觉方面的系列教程,从
文章浏览阅读2.9k次。一个ovf文件,文件包虚拟机的硬件配置,例如cpu规格、内存等一个或多个vmdk,虚拟机的硬盘镜像,数量取决于虚拟机有多少个硬盘。_virtio scsi single
文章浏览阅读191次。一、直接使用ListView组件创建1.直接在XML中创建ListView用entries属性附上一个数组资源其中divider属性是设置分割线可以使用颜色和drawable资源分割 <ListView android:id="@+id/listView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:divi_listview的基本使用与优化
文章浏览阅读833次,点赞8次,收藏7次。【代码】华为无线AC常用命令记录。_display ap all为idle
文章浏览阅读1k次,点赞3次,收藏21次。本次复习采用的是这本书,如有书写不当的地方,欢迎批评指正!_有害规则和多余规则
文章浏览阅读1.4k次。提供:ZStack云计算 系列教程本教程为DNS管理介绍系列七篇中的第五篇。内容介绍DNS,或者称为域名系统,往往成为学习网站与服务器配置中的一大难点。尽管很多人都会使用由托管厂商或者域名注册商提供的DNS服务器,但建立自己的DNS服务器亦能带来诸多不容忽视的助益。在本篇教程中,我们将探讨如何在Ubuntu 14.04当中安装Bind9 DNS服务器并将其配置为仅权威DNS服务器。作为示例,我们将立_auth-nxdomain no;
文章浏览阅读377次,点赞8次,收藏7次。快速格式化代码(改善代码格式,砍起来更好看) ctrl + alt + L。【第一次是添加注释,第二次是取消注释】快速运行程序 自己定义 shift +在java中找到+号 进行添加。将光标放在一个方法上,输入。导入该行需要的类 先配置。ctrl + 左键 ,查看一个类的层级关系。学习继承后,非常有用。还有很多其它的快捷键。自己的定义的一些模板。_idea 设置自定义快捷键模板