C++强制转换运算符
来源:互联网 发布:单片机培训机构 编辑:程序博客网 时间:2024/05/16 00:30
1、const_cast
作用:从类中移除const、volatile和_unaligned特性
声明语法:
const_cast <type_id> (expression)
下面看一段示例代码,就能明白这个关键字的作用是声明了
// expre_const_cast_Operator.cpp// compile with: /EHsc#include <iostream>using namespace std;class CCTest {public: void setNumber( int ); void printNumber() const;private: int number;};void CCTest::setNumber( int num ) { number = num; }void CCTest::printNumber() const { cout << "\nBefore: " << number; const_cast< CCTest * >( this )->number--; cout << "\nAfter: " << number;}int main() { CCTest X; X.setNumber( 8 ); X.printNumber();}
在CCTest的成员函数setNumber中,它原本是不能修改类中的变量的,因为函数声明为了const。但使用了,const_cast后,this指针的数据类型从const CCTest*,转变为CCTest*,以允许修改成员变量number。而强制转换仅对其所在的语句中的其余部分持续。
0 0
- 【C++】强制类型转换运算符
- C语言混合运算、强制转换盒运算符
- 【C++】强制类型转换运算符的重载
- C之运算符与强制类型转换
- 强制转换类型运算符
- 强制类型转换运算符
- 强制类型转换运算符
- C++强制转换运算符
- c++强制转换运算符
- 强制类型转换运算符
- 强制类型转换运算符
- C语言之逗号运算符、自动转换和强制转换
- 标准c++强制类型转换运算符
- 运算符和强制类型转换
- c++ 强制转换类型运算符
- 运算符和类型强制转换
- C++强制类型转换运算符
- 四种强制转换类型运算符
- 找出字符串中第一个只出现一次的字符
- nginx之第一个helloworld程序
- 找女朋友
- 使用ffmpeg 对视频做resize
- ActiveMq的简单使用
- C++强制转换运算符
- 机房收费系统——组合查询
- 我遇到tomcat 7 full gc频繁的问题
- AstroNova瞬态记录仪
- 记录可以预见的艰难找工作经历
- 70. Climbing Stairs
- linux 下的crontab定时调度命令
- php 快速排序算法
- 使用纯前端JavaScript 实现Excel IO