C++中~是什么意思

如题所述

C++中~是按位取反运算符,它后面的数会被先转换为二进制形式,然后,如果二进制位上的数为1,执行运算后就变成0,如果二进制位上的数为0,执行运算后就变成1。
例如:
~4 = ~(00000100) = 11111011,得到一个符号位为1的数值,它是负数,用补码求原码:
11111011 = - (00000101) = -5,所以~4等于-5。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-12-08
“~”这个符号所代表的函数为析构函数,
在C++的面向对象编程中,都会有一个以上的构造函数形如CSerial();

和一个析构函数形如~CSerial();
第2个回答  推荐于2018-02-26
按位取反操作
按位取反运算是单目运算,用来求一个位串信息按位的反,即哪些为0的位,结果是1,而哪些为1的位,结果是0。例如, ~7的结果为0xfff8。本回答被网友采纳
第3个回答  2012-01-29
这个是 destroy 的意思,销毁的时候定义时用到的本回答被提问者采纳
第4个回答  2021-04-28
这个波浪线主要用在两方面,
第一是波浪线加变量,例如:unsigned short a=1; 二进制表示为 0000 0001

~a 就是按位进行取反操作 ,0变1,1变0;二进制表示为1111 1110;值是65534
第二是波浪线加函数名,这个函数比较特殊,称为析构函数,例如,类
class Demo
{
Demo();
~Demo(); //这个就是析构函数

}
析构函数的意义在于类对象声明周期结束时,自动被调用,并释放相关的内存。
相似回答