c/c++
zhoukangli
一路向前,实践自己的梦想~
展开
-
数组合并小程序
这里一个一个插入是有效率问题的,为了程序简单,没有处理,如果有一批插入元素都在范围内,可以整体插入,但是实现条件会更多。3. 一个函数专门用于查找可以插入的位置,对于重复的数据,查找到的未知有可能是重复的,那么要跳过;1. 如果比插入的数组大,那么往后插入,如果继续有大的,就移动位置插入;4. 一个函数专门用于插入动作,插入方法就是先整体移动位置,然后插入;2. 遍历完所有要插入的元素;原创 2024-03-28 22:00:58 · 578 阅读 · 0 评论 -
快速排序的关键点
2. 从高往低找比基准准小的,所以条件是只要比自己大或者等于,就跳过,然后找到之后,进行交换,这里注意前提条件是从高到低,与从低到高都是维持,低<高。3. 从低往高找比基准大的,所以条件是只要是比自己小或者等于的,就跳过,然后找到之后,进行交换。4. 最后返回low的位置,作为进一步划分的前后端。这里有一个停止条件就是,low必须小于high。寻找基准位置前的区域进行划分。寻找基准位置后的区域进行划分。原创 2024-03-28 14:28:40 · 130 阅读 · 0 评论 -
C++ 类模板温故
由于这一段时间学习android 的binder原创 2014-09-01 21:54:42 · 665 阅读 · 0 评论 -
阅读代码整洁之道->错误处理
错误处理与代码逻辑的矛盾原创 2014-04-23 22:53:06 · 643 阅读 · 0 评论 -
c中的#、##用法
1.#假如希望在字符串中包含宏参数,ANSI C允许这样作,在类函数宏的替换部分,#符号用作一个预处理运算符,它可以把语言符号转化程字符串。例如,如果x是一个宏参量,那么#x可以把参数名转化成相应的字符串。该过程称为字符串化(stringizing).#include#define print(x) printf(" the value of print("#x") is %d原创 2012-09-26 09:30:46 · 2982 阅读 · 0 评论 -
c++/c中free已经free过的内存会出现的现象
/********************************************************************** 测试多次free的后果***********************************************************************/#include#i原创 2012-09-21 20:42:12 · 1756 阅读 · 0 评论 -
sizeof()函数
sizeof()函数只计算栈中分配的大小。 /************************************************************************//* sizeof 只求栈中的大小,存放在数据区的不包括在内,如下的static int b *//*********************************************原创 2012-09-23 09:47:41 · 544 阅读 · 0 评论 -
c++中的二十三种设计模式
经典设计模式小结其实设计模式真的很好理解,如下理解了,很具有实用性的。1、FACTORY?追MM少不了请吃饭了,麦当劳的鸡翅和肯德基的鸡翅都是MM爱吃的东西,虽然口味有所不同,但不管你带MM去麦当劳或肯德基,只管向服务员说“来四个鸡翅”就行了。麦当劳和肯德基就是生产鸡翅的Factory 工厂模式:客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就转载 2012-09-21 11:32:01 · 1666 阅读 · 0 评论 -
c++中友元函数访问私有变量及函数
#includeusing namespace std;class A{private: int i; void fun1() { i = 40; cout<<"output something like this"<<endl; } friend int main(); };int main(){ A a;原创 2012-09-21 16:15:27 · 2339 阅读 · 1 评论 -
指针与引用的区别(笔试必知)
1.从现象上看:指针在运行时可以改变其所指向的值,而引用一旦和某个对象绑定后就不再改变2.从内存分配上看:程序为指针变量分配内存区域,而引用不分配内存区域3.从编译上看:程序在编译时分别将指针和引用添加到符号表上,符号表上记录的是变量名及变量所对应地址。指针变量在符号表上对应的地址值为指针变量的地址值,而引用在符号表上对应的地址值为引用对象的地址值。符号表生成后就不会再改,因此指针可以改变转载 2012-09-21 20:45:42 · 806 阅读 · 0 评论 -
实现singleton模式(设计模式的一种)
/*------------------------------------------------------------------------------ 描述:实现singleton模式(singleton模式就是一个类只有一个对象,通过静态变量实现) -----------------------------------------------------------原创 2012-09-21 20:21:17 · 681 阅读 · 0 评论 -
关键字const有什么含义?
我只要一听到被面试者说:"const意味着常数"(不是常数,可以是变量,只是你不能修改它),我就知道我正在和一个业余者打交道。去年Dan Saks已经在他的文章里完全概括了const的所有用法,因此ESP(译者:Embedded Systems Programming)的每一位读者应该非常熟悉const能做什么和不能做什么.如果你从没有读到那篇文章,只要能说出const意味着"只读"就可转载 2012-10-01 17:08:32 · 18533 阅读 · 1 评论 -
四种显示转换的用法
1.reinterpret_cast/************************************************************************//* 4种显示转换的使用方法,含义,使用注意事项: *//************************************************原创 2012-10-01 16:51:00 · 1365 阅读 · 0 评论 -
关键字static
这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:1)在函数体内,一个被声明为静态的变量在这一函数被调用过程中维持其值不变(该变量存放在静态变量区)。2) 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。3) 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就转载 2012-10-01 17:06:13 · 1487 阅读 · 0 评论 -
动态语言与静态语言、强类型与弱类型
1 动态语言和静态语言 通常我们所说的动态语言、静态语言是指动态类型语言和静态类型语言。 1 动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动转载 2012-10-01 15:45:02 · 1585 阅读 · 0 评论