蒲公英110

2016年9月1日

复制构造函数(拷贝构造函数)

摘要: 也许很多C++的初学者都知道什么是构造函数,但是对复制构造函数(copy constructor)却还很陌生。对于我来说,在写代码的时候能用得上复制构造函数的机会并不多,不过这并不说明复制构造函数没什么用,其实复制构造函数能解决一些我们常常会忽略的问题。 为了说明复制构造函数作用,我先说说我们在编程 阅读全文

posted @ 2016-09-01 19:06 蒲公英110 阅读(481) 评论(0) 推荐(0) 编辑

构造详解

摘要: 一. 什么是拷贝构造函数 首先对于普通类型的对象来说,它们之间的复制是很简单的,例如: [c-sharp] view plain copy int a = 100; int b = a; [c-sharp] view plain copy [c-sharp] view plain copy 而类对象 阅读全文

posted @ 2016-09-01 17:37 蒲公英110 阅读(1758) 评论(0) 推荐(0) 编辑

C++的运算符重载

摘要: C++中预定义的运算符的操作对象只能是基本数据类型。但实际上,对于许多用户自定义类型(例如类),也需要类似的运算操作。这时就必须在C++中重新定义这些运算符,赋予已有运算符新的功能,使它能够用于特定类型执行特定的操作。运算符重载的实质是函数重载,它提供了C++的可扩展性,也是C++最吸引人的特性之一 阅读全文

posted @ 2016-09-01 10:56 蒲公英110 阅读(138) 评论(0) 推荐(0) 编辑

2016年8月30日

delete p和delete [] p的区别(转)

摘要: operator new 和 operator delete函数有两个重载版本,每个版本支持相关的new表达式和delete表达式: void* operator new (size_t); // allocate an objectvoid* operator new [] (size_t); / 阅读全文

posted @ 2016-08-30 16:19 蒲公英110 阅读(492) 评论(0) 推荐(0) 编辑

2016年8月28日

静态关键字详解

摘要: 1.c语言的static变量 在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a 阅读全文

posted @ 2016-08-28 15:31 蒲公英110 阅读(762) 评论(0) 推荐(0) 编辑

2016年8月26日

指针和指针引用的区别和联系

摘要: 如果是传递指针,那么会先复制该指针,在函数内部使用的是复制后的指针,这个指针与原来的指针指向相同的地址,如果在函数内部将复制后的指针指向了另外的新的对象,那么不会影响原有的指针;但 是对于传递指针应用,如果将传递进来的指针指向了新的对象,那么原始的指针也就指向了新的对象,这样就会造成内存泄漏,因为原 阅读全文

posted @ 2016-08-26 14:59 蒲公英110 阅读(175) 评论(0) 推荐(0) 编辑

类方法详解

摘要: 1.构造函数 构造函数不同与其他类方法,因为他创建新的对象,而其他类方法只是被现有的对象调用。这是构造函数不被继承的原因之一。继承意味着派生类对象可以使用基类的方法, 然而,构造函数在完成其工作之前,对象并不存在。 2.析构函数 一定要定义显示析构函数来释放构造函数使用new分配的所有内存,并完成类 阅读全文

posted @ 2016-08-26 11:30 蒲公英110 阅读(234) 评论(0) 推荐(0) 编辑

默认构造函数、复制构造函数、赋值运算

摘要: 1.默认构造函数 默认构造函数要么没有参数,要么所有的参数都是默认值。如果没有定义任何构造函数,编译器将会自动定义默认构造函数,以便于让用户自己定义类对象。 比如:Star是一个类: Star rigel; Star pleiades[6];类数组 自动生成的默认构造函数的另一项功能是,调用基类的默 阅读全文

posted @ 2016-08-26 10:13 蒲公英110 阅读(1301) 评论(0) 推荐(0) 编辑

2016年8月25日

C++中的数据存储方式自动存储、静态存储和动态存储

摘要: C++中变量存储方式有三种,自动存储,静态存储,动态存储 自动存储简单意义上就是在函数内不用任何关键字直接定义的变量,它在函数被调用时被创建,在函数退出时自动消失, 静态存储顾名思义就是在程序的整个运行过程中都存在,在函数体外定义的变量自动为静态存储方式,也可以在函数内使用static关键字定义 动 阅读全文

posted @ 2016-08-25 23:14 蒲公英110 阅读(1105) 评论(0) 推荐(0) 编辑

2016年8月24日

虚函数的深入理解

摘要: 在面向对象的C++语言中,虚函数(virtual function)是一个非常重要的概念。因为它充分体现 了面向对象思想中的继承和多态性这两大特性,在C++语言里应用极广。比如在微软的MFC类库中,你会发现很多函数都有virtual关键字,也就是说, 它们都是虚函数。难怪有人甚至称虚函数是C++语言 阅读全文

posted @ 2016-08-24 19:35 蒲公英110 阅读(460) 评论(0) 推荐(0) 编辑

导航