![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 58
zhangchunminggucas
这个作者很懒,什么都没留下…
展开
-
C++/C动态内存分配的区别
C++使用new和delete,C语言使用malloc和free进行动态内存的管理,主要区别有以下几点:1、new分配的内存空间是带有类型的,而malloc分配的空间类型是void*。new进行内存分配时,首先调用operator new分配内存空间,然后用placement new调用对应的构造函数创建对象。operator new与malloc是对应的都只负责内存空原创 2012-05-08 23:15:45 · 441 阅读 · 0 评论 -
C++中类的理解
1、在类内部定义的函数默认为内联函数,不过是否最终成为内联函数要看函数是否足够简单。2、一种比较特殊的成员函数是const成员函数,该函数拥有一个隐含的const类型的this指针,因此该类型的函数不能改变类的数据成员。3、用struct和class定义的类的唯一区别在于,struct默认的成员是公有的,而class默认是私有的。4、inline函数可以在声明或者定义处指定,都是合法的原创 2012-05-31 21:57:08 · 2079 阅读 · 0 评论 -
C++成员函数,非成员函数,友元函数,隐式类类型转换
博客的所有内容都是个人理解,难免有理解错误的地方,欢迎大家多多拍砖!成员函数是指在类内部定义的函数,非成员函数是指在某个命名空间或者全局空间内的函数,友元函数是指某些虽然不是类成员却能够访问类的所有成员的函数。成员函数与非成员函数的最大区别是,成员函数可以是虚拟的。class testVar{public: public void init(int num); fri原创 2012-05-17 15:38:36 · 6588 阅读 · 0 评论 -
C++的命名空间
博客的所有内容都是个人理解,难免有理解错误的地方,欢迎大家多多拍砖!C++中的命名空间是为了防止命名重复,免除程序猿为想名字而绞尽脑汁的痛苦,具体作用于Java中package相同。一、命名空间的定义命名空间可以化为全局的命名空间,将各自的变量和函数封装在自己的命名空间范围内,这样即使各部分存在重名的变量或者函数也不会存在问题。命名空间以namespace开头,后便节命名空间的名字原创 2012-05-21 22:47:43 · 1857 阅读 · 0 评论 -
C++中的异常处理机制
博客的所有内容都是个人理解,难免有理解错误的地方,欢迎大家多多拍砖!一直以来非常讨厌java中的异常处理机制,虽然号称自己写过不少c++的程序,但是对于c++中的异常处理知识确实一片空白,根据C++ primer中的学习,总结个人的几点理解。1、异常处理机制是程序中相互独立的部分在出现问题时,进行通讯的一种手段,这样做的优点是将问题的检测和问题的处理隔离开来。2、异常类似于将实参传递给原创 2012-05-16 23:24:40 · 1697 阅读 · 0 评论 -
C++入门系列——C++中的复制控制(复制构造函数、赋值函数和析构函数)、智能指针
这张图摘来酷壳(陈浩大神的博客),感觉他总结的这个图比较经典,至少我是深有感触,从一开始不顾任何规则乱写,到四处碰壁开始明白c++需要编程规则。一直以来都鼓吹自己是一个写C++的选手,但是说实话从来没有系统的打过C++的基础。对于C++的复制控制机制更是知之甚少,这里将结合C++primer中的相关章节谈一下自己的理解。 复制控制 首先解释下什么是复制控制,复制构造函数、赋原创 2012-06-09 21:42:13 · 2790 阅读 · 0 评论 -
C++中static的理解
博客的所有内容都是个人理解,难免有理解错误的地方,欢迎大家多多拍砖!C++中static的用法可以分为两个大类:C风格的static的使用和C++风格的static的使用。一、C风格的static的使用1、局部静态变量C风格的局部静态变量是在某个函数中定义的static变量,该变量只会被初始化一次,一直存在到程序结束。与普通局部变量的区别是,只会初始化一次,函数退出后该值依然存在一原创 2012-05-22 19:26:11 · 1822 阅读 · 0 评论