C++ 南科大于仕琪课程

目录

课程信息

7.4 function pointers

7.5 递归函数(Recursive functions)


课程信息

作者:于仕琪(南方科技大学计算机系副教授/opencv中国团队负责人)

视频地址:快速学习C和C++,基础语法和优化策略,学了不再怕指针(南科大计算机系原版)_哔哩哔哩_bilibili

持续更新中。。。。。。

7.4 function pointers

有什么用:可以非常灵活的使用不同的函数,让该指针指向哪个函数就使用哪个函数,函数指针可以作为函数/类的输入参数,特别是回调函数,比if/else判断调用哪个函数更灵活、优雅、方便

是什么:函数指针是一个指向函数的指针,函数指针具体是指向了函数执行的指令的地址

怎么使用

C++ 南科大于仕琪课程_第1张图片

 1、定义:上面第三行代码表示,定义了一个函数指针norm_ptr,该函数指针指向的函数需要满足的条件为:输入参数类型为float,float,返回值类型为float,只要满足这样的函数,该指针就可以指向它

2、赋值:两种赋值方式,直接用函数名赋值,或对函数取地址

3、调用:两种调用方式:直接像调用函数一样调用,或使用(*norm_ptr)

4、作为输入参数的使用

C++ 南科大于仕琪课程_第2张图片

对于不同输入数据的排序,不同的规则,可以用同一个接口 

函数引用

 注意定义时为(&norm_ref),且因为是引用,必须在定义时就对其进行初始化

7.5 递归函数(Recursive functions)

函数自己调用自己:需要正确设置终止条件,防止无限套娃,无限套娃的话,会把栈爆掉

简单示例

C++ 南科大于仕琪课程_第3张图片

优缺点:

C++ 南科大于仕琪课程_第4张图片

你可能感兴趣的:(c++,开发语言)