C++ 总结三

本文介绍了C++编程中的内存管理,包括栈内存、全局变量和内存溢出、内存泄露的概念。同时,讲解了二叉树的层序遍历和图的广度优先遍历算法。探讨了单例模式的实现,以及网络通信中的TCP/IP协议分层、MAC地址和三次握手、四次挥手的过程。最后,提到了进程间的通信机制和死锁的四个条件。
摘要由CSDN通过智能技术生成

1.栈空间上面的局部变量默认初始化为随机值。

全局整形变量和静态stati整形c变量默认初始值为0。

 

内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。

内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。

 

char *Ptr = NULL;

        Ptr = (char *)malloc(100 * sizeof(char));

Obj    *a = (obj *)malloc(sizeof(obj));   

 

new 是c++中的操作符,malloc是c 中的一个函数

new 不止是分配内存,而且会调用类的构造函数,同理delete会调用类的析构函数,而malloc则只分配内存,不会进行初始化类成员的工作,同样free也不会调用析构函数

 

从上到下打印二叉树的规律:每一次打印一个结点的时候,如果该结点有子结点,则把该结点的子结点放到一个队列的末尾。接下来到队列的头部取出最早进入队列的结点,重复前面的打印操作,直至队列中所有的结点都被打印出来为止。

 

二叉树的层序遍历,顾名思义就是按照层序自上而下遍历树中的节点,也就是说从根节点开始入队列,遍历是通过队列的队头节点来遍历的,根节点入队之后调用遍历函数,根节点被访问之后就要出队了,这个

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值