关键字之操作符(运算符)
来源:互联网 发布:值机软件 编辑:程序博客网 时间:2024/06/08 19:54
C++新增操作符(运算符):
new:分配内存空间
delete:释放内存空间
const_cast:
static_cast:
dynamic_cast:
reinterpret_cast:
this:
operator:
and, and_eq, bitand, bitor, compl, not, not_eq, or, or_eq, xor, xor_eq:各种运算符替代名
1.new和delete
int *ptr = new int;*ptr = 10;delete ptr;//delete ptr之后,只是释放了指针指向的内存空间。ptr并不会自动被置为NULL,指针还存在,同时还指向了之前的地址。ptr = NULL;//C++标准规定:delete空指针是合法的,没有副作用,所以我们在Delete指针后赋值为NULL或0是个好习惯。delete ptr;//if set ptr equalto NULL after delete ptr, delete ptr again will cause no problem, if not, that will cause double delete.int *ptr2 = new int[10];delete []ptr2;//[]-->表示批量删除,与new []保持一致ptr2 = NULL;
2.const_cast、static_cast
const int i=10;//int *p=&i; //error//const-->const//非const-->const//const 不能-->非const const int* ptr=&i;//1int *p2=(int*)&i;//2*p2=20;cout<<"i:"<<i<<endl;cout<<"*p2:"<<*p2<<endl;//const_castint *p3=const_cast<int*>(&i);//3,解除const限定,只能对指针和引用*p3=30;cout<<"i:"<<i<<endl;cout<<"*p3:"<<*p3<<endl;//static_castint num1=5, num2=2;//double ret=double(num1)/num2;double ret=static_cast<double>(num1)/num2;//强制类型转换cout<<"ret:"<<ret<<endl;
阅读全文
0 0
- 关键字之操作符(运算符)
- 关键字之运算符
- Day5之操作运算符
- 多关键字排序(里面有关于操作符(<<运算符 和 >>运算符 )的重载)
- 读朱兆祺攻破C语言之五---关键字、运算符、语句
- 黑马程序员-----java基础概述之关键字、运算符
- C#关键字-运算符关键字-new
- scala入门3(基础语法之操作符运算)
- 黑马程序员之 ---- 基础语法上(关键字、标识符、进制、变量、数据类型、运算符、语句)
- Day5之操作运算符2
- 位运算之位操作符
- JAVA基础之三:运算操作符
- Python基础之运算操作符总结
- asp关键字函数运算符
- asp关键字函数运算符
- java 关键字,标识符,运算符
- Java关键字和运算符
- C++关键字或运算符
- LeetCodeOJ_001: Two Sum
- normalize.css使用方法
- Sql Server服务远程过程调用失败
- 个人学习总结一机器学习入门(十)
- Linux文件编程
- 关键字之操作符(运算符)
- 2017 计蒜之道 初赛 第六场
- smaba
- printf 函数的输出条件
- 【教程】【PDF】Python2.7教程
- ZOJ-2724-Windows Message Queue
- 05_细节_常量知识小结
- Struts2 resultType返回类型
- JSP基础