03 2018 档案
摘要:File-》Settings-》Editor-》Color Scheme-》Python
阅读全文
摘要:1.将拷贝构造函数和赋值运算符声明为私有,并不予实现 2.使用delete
阅读全文
摘要:特征new/deletemalloc/free 分配内存的位置 自由存储区 堆 内存分配失败返回值 完整类型指针 void* 内存分配失败返回值 默认抛出异常 返回NULL 分配内存的大小 由编译器根据类型计算得出 必须显式指定字节数 处理数组 有处理数组的new版本new[] 需要用户计算数组的大
阅读全文
摘要:gdb命令包含在GNU的gcc开发套件中,是功能强大的程序调试器。GDB中的命令固然很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基本的程序调试工作。
阅读全文
摘要:转自:http://www.cnblogs.com/qyaizs/articles/2039101.html 一、C与C++不同 C用结构体声明变量的时候必须加struct,而C++不需要 所以C语言定义结构体时使用typedef 二、C++使用typedef区别
阅读全文
摘要:函数:scanf 功能:执行格式化输入 用法:int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化输入函数,它从标准输入设备(键盘) 读取输入的信息。可以读入任何固有类型的数据并自动把数值变换成适当的机内格式。 其调用格式为: scanf
阅读全文
摘要:1.C++ 不要使用cin,cout,该使用scanf和printf 2.Java 不要使用Scanner,改用BufferedReader 3.Python 在文件开始的地方加入
阅读全文
摘要:线段树,也叫区间树(interval tree),它在各个节点保存一条线段(即子数组)。设数列A包含N个元素,则多线段树的根节点表示整个区间A[1,N],左孩子表示区间A[1,(1+N)/2],右孩子表示区间A[(1+N)/2+1,N],不断递归,直到叶子节点,叶子节点只包含一个元素。树的深度 线段
阅读全文
摘要:一、cin 1.cin使用空白(空格、制表符和换行符)来确定字符串结束的位置,并且对于换行符,cin会把换行符留在输入队列。cin读取字符串放到数组中,并自动在结尾添加空字符。 例如: 2.发送给cin的输入被缓冲,只有用户按下回车键后,输入的内容才会发送给程序。 二、cin.getline() g
阅读全文
摘要:一、死锁 死锁是两个(或两个)的进程在执行过程中,因争夺资源而造成互相等待的现象,若无外力作用,进程无法推进下去,此时系统处于死锁。 二、死锁的四个必要条件: 1.互斥条件:一个资源每次只能别一个进程使用; 2.请求与保持条件:一个进程因请求资源而等待时,对已获得的资源保持不放 3.不可剥夺条件:进
阅读全文
摘要:1 静态链接库:静态链接库是一个或者多个obj文件打包,链接器从静态链接库获取所有引用的函数,并将库同代码一起放到可执行文件中。 优点 : (1) 代码装载速度快,执行速度略比动态链接库快; (2) 只需保证在开发者的计算机中有正确的.LIB文件,在以二进制形式发布程序时不需考虑在用户的计算机上.L
阅读全文
摘要:一、全局变量 一般最好把全局变量声明在cpp文件中(如果在.h文件中定义的话,多层包含可能会引起重复定义的错误) cpp中定义好了之后,可以在.h文件中利用 extern关键字进行 声明(extern 声明表示在此处引入外部定义变量的声明,而不是在本编译单元中再声明一个同名的局部变量)然后其他文件要
阅读全文
摘要:写了个汉诺塔,使用全局变量count来记录步数,结果Error:count不明确 后来才知道 std命名空间里有std::count,所以与全局变量count冲突 std::count 所以修改方法有以下几种: 1.全局变量count改为cnt(或其他名称) 2.使用count的地方改为::coun
阅读全文
摘要:vector::erase 从指定容器删除指定的元素 两个重载: 这种使用方法会内存错误,因为删除itor指定元素后,itor就编程野指针了,正确使用是itor重新赋值为erase返回值。 2. 这个方式在删除连续元素会错误,结果发现是100 300 300 500,因为itor指向删除元素下一个元
阅读全文
摘要:内存对齐由编译器负责,编译器为程序中的每个"数据单元"安排在适当的位置上。 内存对齐原因: (1)平台原因(移植原因):不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。 (2)性能原因:数据结构(尤其是栈)应该尽可能地在自然边界上
阅读全文
摘要:线性表是最基本、最简单、也是最常用的一种数据结构。 线性表包含以下几种: (1)顺序存储:数组 (2)链式存储:单向链表,双向链表,循环单向链表,循环双向链表 (3)二者结合:静态链表 (3)栈和队列,因为栈和队列可以用数组或链表实现
阅读全文
摘要:select select能监控的描述符个数由内核中的FD_SETSIZE限制,仅为1024,这也是select最大的缺点,因为现在的服务器并发量远远不止1024。即使能重新编译内核改变FD_SETSIZE的值,但这并不能提高select的性能。 每次调用select都会线性扫描所有描述符的状态,在
阅读全文
摘要:TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP建立连接需要三次握手,释放连接需要四次握手。 1.TCP整个过程流程图 并且TCP整个过程可以看成是状态机 2.TCP建立过程(三次握手) TCP连接过程:
阅读全文