07 2015 档案

摘要:2021年11月22日更新 我在2015年写下的这篇博客,目前来看标题的描述应当是不正确的,这篇博客应当是我学习C++时的一个思考,结论并不能说正确。按照 《Effective Modern C++》的描述,如果能取得表达式的地址,则基本可以断定是一个左值。 而匿名对象这个概念,其实是比较模糊的。所 阅读全文
posted @ 2015-07-24 10:20 Demon90s 阅读(754) 评论(3) 推荐(0) 编辑
摘要:如果写成 p == NULL,有可能误写为 p = NULL,那么编译器并不会报错,但却不是程序想要的结果。因此写成 NULL == p 来防止这样的编码错误。实际上两者效果是一样的。 阅读全文
posted @ 2015-07-21 22:21 Demon90s 阅读(373) 评论(0) 推荐(0) 编辑
摘要:父类类型指针可指向子类对象,调用子类对象重写的虚函数,一条代码即有了不同的表现结果,也就是多态。 很显然,子类重写的虚函数里调用的自然是子类的成员变量,父类类型指针是无法直接访问到子类的成员变量的。那么既然是父类类型指针调用的子类的虚函数,那么传给this的自然就是父类类型的指针,那么又如何能... 阅读全文
posted @ 2015-07-21 10:46 Demon90s 阅读(846) 评论(0) 推荐(0) 编辑
摘要:类的虚函数调用是通过虚函数表实现的。所谓虚函数表,是编译器自动为一个带有虚函数的类生成的一块内存空间,其中存储着每一个虚函数的入口地址。由于函数的入口地址可以看成一个指针类型,因此这些虚函数的地址间隔为四个字节。而每一个带有虚函数类的实例,都拥有一个虚函数指针——vptr,在类的对象初始化完毕后... 阅读全文
posted @ 2015-07-20 16:07 Demon90s 阅读(1231) 评论(1) 推荐(1) 编辑
摘要:一个自定义类,如果没有重载其=运算符,那么编译器将自动生成一个。但是此编译器自动生成的重载函数可能不安全。这是因为它采用了所谓的“浅拷贝”,也就是对于指针而言,它拷贝的是指针的值,而不是其指向的内存空间。那么这个内存空间就有了两个指针指向它,且类对象要析构两次,但是内存空间只能被释放一次,那么第二次 阅读全文
posted @ 2015-07-17 13:25 Demon90s 阅读(3853) 评论(0) 推荐(0) 编辑
摘要:使用XHProf的步骤如下: 1.先定义好要测试的函数 2.开启监测 3.执行函数 4.关闭监测并保存监测结果 以下通过一段实例代码说明之。save_run($xhprof_data, "test_xhprof");//输出一个链接,指向解析run_id后的页面echo '' . ... 阅读全文
posted @ 2015-07-13 09:40 Demon90s 阅读(581) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示