05 2016 档案

摘要:代码: 输出: 分析: 0.5默认为双精度浮点类型。 阅读全文
posted @ 2016-05-28 17:11 hu983 阅读(715) 评论(0) 推荐(0)
摘要:代码: 输出: 若将A中的print()函数改成虚函数,则输出 分析: 由以上代码可知,基类对象的引用和指针实际上是非常相似的。 阅读全文
posted @ 2016-05-26 16:33 hu983 阅读(1039) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: (++a)返回的是左值,而(a++)不是。 阅读全文
posted @ 2016-05-26 12:53 hu983 阅读(664) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 虽然&&的运算符优先级比||高,但是第9行代码||后面的部分并没有执行。 阅读全文
posted @ 2016-05-26 12:19 hu983 阅读(1460) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 由输出可知,unsigned char向int转换时不会扩展最高位,而char(signed char)则会。 阅读全文
posted @ 2016-05-25 14:28 hu983 阅读(1475) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 逗号运算符优先级最低,从左到右执行。 需要注意的是第九行代码实际上是两条表达式。 阅读全文
posted @ 2016-05-24 20:34 hu983 阅读(5901) 评论(0) 推荐(0)
摘要:代码1: 输出: 分析: 多重继承与单继承类似,也是先执行基类构造函数。多个基类之间,则按照派生类声明时从左到右执行。 代码2: 输出: 分析: 执行顺序:基类构造函数->初始化成员变量->派生类构造函数 阅读全文
posted @ 2016-05-24 20:14 hu983 阅读(2438) 评论(0) 推荐(0)
摘要:代码: 输出: 若将代码第8行注释并替换成第7行注释内容,输出为 分析: 常量字符串存储在文字常量区,而字符数组存储在栈上。 阅读全文
posted @ 2016-05-24 14:15 hu983 阅读(1837) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: dynamic_cast下行转换(基类到子类)时要求基类是多态的,如果发现下行转换不安全,dynamic_cast返回一个null指针; static_cast则没有这个要求,但在无关类指针转换时,编译器会报错,提升了安全性。 阅读全文
posted @ 2016-05-24 12:00 hu983 阅读(281) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 若将A的析构函数设置为虚函数,则输出 所以最好将类的析构函数设为虚函数 阅读全文
posted @ 2016-05-24 11:35 hu983 阅读(215) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: C++中struct默认继承方式为public,而class为private。 阅读全文
posted @ 2016-05-23 19:57 hu983 阅读(2401) 评论(0) 推荐(1)
摘要:代码: 输出: 分析: 如果将代码23行注释掉并改为22行,输出变为 阅读全文
posted @ 2016-05-23 11:44 hu983 阅读(492) 评论(0) 推荐(1)
摘要:代码: 输出: 分析: 由于浮点数运算时经常会产生一定误差,因此判断浮点数是否为0一般判断其绝对值是否小于某个非常小的数。 阅读全文
posted @ 2016-05-23 11:31 hu983 阅读(1149) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 可以参考https://www.zhihu.com/question/35843839 需要注意的是下列两行代码的区别 前者新建一个对象,后者声明了一个函数。 阅读全文
posted @ 2016-05-20 22:46 hu983 阅读(314) 评论(0) 推荐(1)
摘要:代码: 输出: 分析: 调用特定的函数可能需要加上相关作用域。 阅读全文
posted @ 2016-05-20 21:01 hu983 阅读(753) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: define在预处理时进行替换,且忽略代码逻辑,替换范围为当前位置之后。 阅读全文
posted @ 2016-05-19 14:16 hu983 阅读(272) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 如果表达式包含signed和unsigned int,signed会被转换为unsigned。如果int 操作数的值恰为负数,其转换为unsigned int可能会变为一个很大的正数(转换结果是该负值对unsigned int的取值个数求模)。所以最好避免对int和unsig 阅读全文
posted @ 2016-05-19 10:49 hu983 阅读(443) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 注意派生类对象的地址与第一个父类地址相同,与第二个父类地址不同。 阅读全文
posted @ 2016-05-18 16:44 hu983 阅读(388) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 1、静态成员变量不能在类中初始化,需要在类外初始化。 2、静态成员函数只能访问静态成员变量,普通成员函数则没有这个限制。 3、静态成员函数不能为虚函数。 阅读全文
posted @ 2016-05-18 15:46 hu983 阅读(825) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: switch只判断一次,如果没有break会顺序向下执行。 阅读全文
posted @ 2016-05-18 13:13 hu983 阅读(2606) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 1、虚析构函数的作用:当基类指针指向派生类并delete时,可以调用派生类的析构函数; 2、私有析构函数的作用:令对象只能在堆上生成,即用new方法。原理是C++是一个静态绑定语言,在编译过程中,所有的非虚函数调用都必须分析完成(虚函数也要检查可访问性)。因此,当在栈上生成对 阅读全文
posted @ 2016-05-17 14:26 hu983 阅读(5434) 评论(0) 推荐(1)
摘要:代码: 输出; 分析: 假如注释掉代码第19行,编译将会出错。 阅读全文
posted @ 2016-05-16 19:05 hu983 阅读(304) 评论(0) 推荐(1)
摘要:代码: 输出: 分析: 注意普通成员函数与静态成员函数的不同。 阅读全文
posted @ 2016-05-15 14:05 hu983 阅读(364) 评论(0) 推荐(0)
摘要:代码: 输出: 假如程序第13行改为 则输出变为 分析: cout先输入到缓冲区(没有直接输出到屏幕),执行fork后缓冲区被复制。加了endl则会直接输出,可以看出endl有换行和清空的作用。 阅读全文
posted @ 2016-05-10 23:33 hu983 阅读(571) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: cout流的操作顺序是——先从右往左读入缓冲区,然后再从左往右输出。 需要注意的是,当它从右边往左读的时候,碰到函数先去执行函数,并把函数返回值读入缓冲区。(函数的返回类型不能是void,否则编译出错) 阅读全文
posted @ 2016-05-10 22:48 hu983 阅读(699) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 1. 常对象只能调用常成员函数。2. 普通对象可以调用全部成员函数。3. 当对一个对象调用成员函数时,编译程序先将对象的地址赋给this指针,然后调用成员函数,每次成员函数存取数据成员时,由隐含使用this指针。 4. 当一个成员函数被调用时,自动向它传递一个隐含的参数,该参 阅读全文
posted @ 2016-05-10 19:11 hu983 阅读(903) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: 空类的大小为1,纯虚函数占8个字节。 阅读全文
posted @ 2016-05-10 18:38 hu983 阅读(488) 评论(0) 推荐(0)
摘要:代码: 输入: 输出: 分析: 可见argc的值会随着输入参数的个数变化,且argv[0]存放着程序文件的完全路径。 阅读全文
posted @ 2016-05-09 23:44 hu983 阅读(228) 评论(0) 推荐(0)
摘要:代码: 输出: 说明: 静态局部变量存储在全局区,全局变量、静态局部变量、静态全局变量都在静态存储区分配空间。 阅读全文
posted @ 2016-05-09 23:32 hu983 阅读(354) 评论(0) 推荐(0)
摘要:代码: 输出: 分析: int *a[10]中的a是指针数组([]优先级高于*),int (*b)[10]中的b是数组指针。 阅读全文
posted @ 2016-05-09 18:53 hu983 阅读(247) 评论(0) 推荐(0)
摘要:代码如下: 阅读全文
posted @ 2016-05-09 16:55 hu983 阅读(2916) 评论(0) 推荐(0)
摘要:vim查看文件编码 改变文件编码为utf-8 查看文件是否存在BOM 去除文件开头的BOM 阅读全文
posted @ 2016-05-09 14:43 hu983 阅读(129) 评论(0) 推荐(0)
摘要:网络服务端口 阅读全文
posted @ 2016-05-01 23:36 hu983 阅读(206) 评论(0) 推荐(0)
摘要:shell可以识别4种不同类型的引字符号: 单引号字符' 双引号字符" 反斜杠字符\ 反引号字符` 1. 单引号 ( '' ) # grep Susan phonebook Susan Goldberg 403-212-4921 Susan Topple 212-234-2343 如果我们想查找的是 阅读全文
posted @ 2016-05-01 16:15 hu983 阅读(7431) 评论(0) 推荐(0)