C++静态类型转换static_cast

----------------------------------------------------------------------------

C++静态类型转换static_cast吧


1.规则与使用

1.1常用于类层次结构中基类和派生类之间的指针或应用的转换。

》进行上行转换(把派生类的指针或引用转换为基类表示)是安全的;
》进行下行转换(把基类的指针或引用转换为派生类表示)不安全;

1.2用于基本类型的转换,例如:把int 转换char,这种转换的安全性要由开发人员保障。

2. 实例代码

2.1基础层次转换

#include
using namespace std;
void test1()
{
		char a='a';
		double d=static_cast(a);
		cout<<"d="<

2.2类层次转换

#include<iostream>
using namespace std;
class base{};
class child::public base{};
class other{};
void test1()
{
		base*base=NULL;
		child*child=NULL;
child*child2=static_cast<child*>(base);
base*base2=static_cast<base*>(child);
}
int main()
{
		test1();
		system("pause");
}

你可能感兴趣的:(学习QT,c++,开发语言,算法)