数组指针是指一个指向数组的指针,例如有一个数组指针p指向一个数组a[],则 *p是取到这个数组,也就是说 *p=a,因此 **p =a[0], 它的定义为: (*c)表示它是一个指针,若不加括号则变成 指针数组 ,[10]表示指向一个长度为10的数组,int 表示数组元素为int 因为函数不能返回数 ...
分类:
编程语言 时间:
2017-08-06 13:59:22
阅读次数:
110
注意:polymorphic base class 应该具有虚析构函数,如果class带有任何virtual函数,也应具有虚析构函数 class不具备polymorphic属性则不应该声明virtual 析构函数 1.老生常谈,如果一个类需要被使用为base calss 则为它声明 "virtual ...
分类:
其他好文 时间:
2017-07-30 17:13:11
阅读次数:
167
状态机在project中使用很的频繁,有例如以下常见的三种实现方法: 1. switch-case 实现。适合简单的状态机。 2. 二维状态表state-event实现。逻辑清晰。可是矩阵通常比較稀疏,并且维护麻烦。 3. 用状态转移表stateTransfer Table实现,数组大小等于状体转移 ...
分类:
编程语言 时间:
2017-07-13 20:20:30
阅读次数:
228
曾经在书上看到函数指针相关的都没怎么重视。可是近期在实际的工作中却派上了用场。所以认真地学习了一遍。 函数指针的申明 申明一个函数指针非常easy,就是将函数申明中的函数名替换为一个指针就可以: C/C++int test(int para1, double *para2); // 函数申明 int ...
分类:
编程语言 时间:
2017-06-15 21:52:15
阅读次数:
194
?? 1、指针数组 数组里面的每一个元素都是指针。 指针数组的案比例如以下: 易犯错误: 2、数组指针 归根结底还是指针,仅仅是取*的时候可以取出一整个数组出来。 数组指针:(一个指针指向了数组。一般和二维数组搭配使用)。 以下的(p+1)表示的是加过20个字符。 3、函数指针: 在gcc编译的时候 ...
分类:
编程语言 时间:
2017-05-29 15:21:31
阅读次数:
301
实际项目中经常遇到很多类似操作,比如命令码对应执行函数等,对于此类操作,比较好的方式是使用const数组,将命令码和操作函数绑定在一起,通过查表方式找到操作函数,并执行操作函数。这样可以简化代码,降低复杂度,在c中这种方式很好实现,在c++中会稍微麻烦一些。 以串口命令解析执行为例,首先定义一个结构 ...
分类:
编程语言 时间:
2017-05-18 19:59:50
阅读次数:
247
返回指针值的函数 一般带回指针值的函数,定义形式为: 看这个经典案例: 指针函数和函数指针的区别 1. 指针函数是指带指针的函数, 即本质是一个函数 2. 函数指针是指向函数的指针变量, 因而函数指针本身首先是指针变量, 只不过该指针指向函数 指针数组 概念: 一个数组,若其元素均被指针类型数据,称 ...
分类:
其他好文 时间:
2017-05-08 23:16:04
阅读次数:
254
1. 数组作为函数的参数,会退化为函数指针 数组作为函数的参数将变成指针类型,将指针传入时,即是求指针的sizeof。32位系统的指针是一个int,4个字节。 2. 内置类型与自定义类型被new时的动作 对于内置类型而言,new仅仅是分配内存,除非后面显示加(),相当于调用它的构造函数。 对于自定义 ...
分类:
其他好文 时间:
2017-04-18 10:15:30
阅读次数:
218
1、指针函数与函数指针、函数指针数组 指针函数:返回值为指针的函数 编译时,会出现警告,返回了一个已经被释放掉的内存空间的首地址解决方法:1、static 2、char *str = "hello world"; 3、malloc 注意:使用完后要free并将指针置为NULL(相对于方法二,这个更加 ...
分类:
编程语言 时间:
2017-03-03 01:22:59
阅读次数:
267
可以通过auto关键字将一个变量直接变为函数指针 auto具有自动类型推断功能 上述代码中fun会被直接认为是一个函数指针 我们还可以将函数指针定义为函数指针数组 和定义函数指针唯一不同的地方就是多加了一个[] 数组名是指向第一个元素的指针, ...
分类:
其他好文 时间:
2016-11-23 07:58:56
阅读次数:
162