上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 14 下一页
摘要: 原文地址http://www.cnblogs.com/waynelu/archive/2012/07/01/2572264.html构造函数构造函数、析构函数与赋值函数是每个类最基本的函数。对于任意一个类A,如果不想编写上述函数,C++编译器将自动为A 产生四个缺省的函数,例如:1 A(void); // 缺省的无参数构造函数2 A(const A &a); // 缺省的拷贝构造函数3 ~A(void); // 缺省的析构函数4 A & operate =(const A &a); // 缺省的赋值函数默认构造函数与默认析构函数仅负责对象的创建和销毁,不做对象的初始化和 阅读全文
posted @ 2013-08-26 22:52 z折腾 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 原文地址http://blog.csdn.net/bug07250432/article/details/10150625 在c++Template中很多地方都用到了typename与class这两个关键字,而且好像可以替换,是不是这两个关键字完全一样呢?相信学习C++的人对class这个关键字都非常明白,class用于定义类,在模板引入c++后,最初定义模板的方法为: template......在 这里class关键字表明T是一个类型,后来为了避免class在这两个地方的使用可能给人带来混淆,所以引入了typename这个关键字,它的作用同class一样表明后面的符号为一个类型,这样在.. 阅读全文
posted @ 2013-08-26 22:41 z折腾 阅读(3847) 评论(0) 推荐(0) 编辑
摘要: 原文地址http://blog.csdn.net/abc78400123/article/details/6779108 在用gdb调试,使用s 或n单步执行程序时,发现程序不是按顺序运行的,有时莫名其妙的执行到前面的语句去了,有时又执行到后面的语句,有时一次执行几条语句。后来查了下资料。原来这是编译时的优化问题所导致的。因为内核的编译是使用make命令的,所以要更改优化等级的话,只能修改makefile文件了。在makefile中,找到CFLAGS 然后在这加上-O0选项即可。当然这个makefile不好改,子目录太多。比如自己可以写一个程序,进行测试,如:gcc编译器下的截图gcc l.. 阅读全文
posted @ 2013-08-26 22:32 z折腾 阅读(2908) 评论(0) 推荐(0) 编辑
摘要: 转载http://www.cnblogs.com/carbs/archive/2012/04/04/2431992.html问题:我看的书上写的对私有部分的访问可以是公共部分的成员函数,也可以是友员函数,那么可以直接对私有部分的静态成员进行初始化吗? 回答:1.static成员的所有者是类本身和对象,但是多有对象拥有一样的静态成员。从而在定义对象时不能通过构造函数对其进行初始化。2.静态成员不能在类定义里边初始化,只能在class body外初始化。3.静态成员仍然遵循public,private,protected访问准则。4.静态成员函数没有this指针,它不能返回非静态成员,因为除了对象 阅读全文
posted @ 2013-08-14 21:52 z折腾 阅读(3822) 评论(0) 推荐(0) 编辑
摘要: /home/ztteng/work/test/20130814/inc/PartList.h: In constructor ‘CarPart::CarPart(int, int)’:/home/ztteng/work/test/20130814/inc/PartList.h:21: warning: ‘CarPart::itsModelYear’ will be initialized after/home/ztteng/work/test/20130814/src/PartList.cpp:10: warning: base ‘Part’/home/ztteng/work/test/201 阅读全文
posted @ 2013-08-14 21:36 z折腾 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 转载http://www.cnblogs.com/8586/archive/2008/09/08/1287028.html纯虚函数是一种特殊的虚函数,它的一般格式如下:class { virtual ()=0; … }; 在许多情况下,在基类中不能对虚函数给出有意义有实现,而把它说明为纯虚函数,它的实现留给该基类的派生类去做。这就是纯虚函数的作用。下面给出一个纯虚函数的例子。#include class point { public: point(int i=0, int j=0) { x0=i; y0=j; } virtual void set()... 阅读全文
posted @ 2013-08-14 20:08 z折腾 阅读(791) 评论(0) 推荐(0) 编辑
摘要: 一、友元类相关概念 要将私有成员数据或函数暴露给另一个类,必须将后者声明为友元类。 注意三点: (1)友元关系不能传递 (2)友元关系不能继承 (3)友元关系不能互通 阅读全文
posted @ 2013-08-14 19:40 z折腾 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 转载http://www.cnblogs.com/kadinzhu/archive/2011/12/12/2284826.html看《effective c++》,作者一直强调用std::tr1::shared_ptr,比起auto_ptr好多了。shared_ptr采用引用计数,多个指针可以指向同一个对象;auto_ptr就不能,只能运行一个指针指向一个对象:如果要指针赋值,那么原来的指针要放弃对该对象的所有权。恩,以后都用shared_ptr。shared_ptr在最新的c++11中,已经被列入了标准指针,而auto_ptr则出局了。说了那么多,shared_ptr采用RAII技术,是防止 阅读全文
posted @ 2013-08-14 19:14 z折腾 阅读(467) 评论(0) 推荐(0) 编辑
摘要: 转载http://www.cnblogs.com/gnagwang/archive/2010/11/19/1881811.htmlC++的auto_ptr auto_ptr所做的事情,就是动态分配对象以及当对象不再需要时自动执行清理。1 构造函数与析构函数 auto_ptr在构造时获取对某个对象的所有权(ownership),在析构时释放该对象。我们可以这样使用auto_ptr来提高代码安全性:int* p = new int(0);auto_ptr ap(p);从此我们不必关心应该何时释放p, 也不用担心发生异常会有内存泄漏。这里我们有几点要注意:1) 因为auto_ptr析构的时候肯定会. 阅读全文
posted @ 2013-08-14 19:10 z折腾 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 转载http://www.cnblogs.com/geekliu/archive/2012/04/24/2468403.htmlclass MyClass{public:MyClass(int num);...}MyClass obj = 10; //ok,convert int to MyClass在上面的代码中编译器自动将整型转换为MyClass类对象,实际上等同于下面的操 作:MyClass temp(10);MyClass obj = temp;上面的 所有的操作即是所谓的"隐式转换".如果要避免这种自动转换 的功能,我们该怎么做呢?嘿嘿这就是关键字explicit 阅读全文
posted @ 2013-08-14 19:06 z折腾 阅读(260) 评论(0) 推荐(0) 编辑
上一页 1 ··· 3 4 5 6 7 8 9 10 11 ··· 14 下一页