C++语言
My__long
这个作者很懒,什么都没留下…
展开
-
new和malloc的区别
0. 属性 new/delete是C++关键字,需要编译器支持。malloc/free是库函数,需要头文件支持。 1. 参数 使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。 2. 返回类型 new操作符内存分配成功时,返回的是对象类型的指针,类型严格与对象匹配,无须进行类...转载 2018-09-20 16:07:29 · 132 阅读 · 0 评论 -
C和C++中static的作用总结
C语言: 1.第一条重要的作用:隐藏。(static函数、变量均可),当同时编译多个文件时,所有未加static前缀的全局变量和函数具有全局可见性。 举例子来说明,同时编译两个文件,一个是a.c,另一个是main.c //a.c char a = 'A'; // global variable void msg() { printf("Hello\n"); } //main....转载 2018-09-23 09:46:13 · 611 阅读 · 0 评论 -
C++ 11和C++98相比有哪些新特性
C++ 11和C++98相比有哪些新特性 C++11标准提供了许多有用的新特性。这篇文章特别针对使C++11和C++98相比看上去像一门新语言的特性 C++11标准提供了许多有用的新特性。这篇文章特别针对使C++11和C++98相比看上去像一门新语言的特性,因为: C++11改变了书写C++代码的风格和习惯,也改变了设计C++库的方式。例如,你会看到更多的被当作参数和返回值的智能指针,还有按...转载 2018-10-23 18:26:28 · 435 阅读 · 0 评论 -
虚函数和纯虚函数的作用与区别
虚函数为了重载和多态的需要,在基类中是有定义的,即便定义是空,所以子类中可以重写也可以不写基类中的此函数! 纯虚函数在基类中是没有定义的,必须在子类中加以实现,很像java中的接口函数! 虚函数 引入原因:为了方便使用多态特性,我们常常需要在基类中定义虚函数。 class Cman { public: virtual void Eat(){……}; void Move(); private: };...转载 2018-10-30 14:59:14 · 998 阅读 · 0 评论 -
C++中构造函数,拷贝构造函数和赋值函数的区别和实现
C++中一般创建对象,拷贝或赋值的方式有构造函数,拷贝构造函数,赋值函数这三种方法。下面就详细比较下三者之间的区别以及它们的具体实现 1.构造函数 构造函数是一种特殊的类成员函数,是当创建一个类的对象时,它被调用来对类的数据成员进行初始化和分配内存。(构造函数的命名必须和类名完全相同) 首先说一下一个C++的空类,编译器会加入哪些默认的成员函数 ·默认构造函数和拷贝构造函数 ·析构函数 ...转载 2018-10-30 15:28:32 · 271 阅读 · 0 评论