• 认真地记录技术中遇到的坑!

第7.2节 函数指针,这很重要

C/C++ Moxun 2年前 (2018-01-18) 451次浏览 0个评论

1.函数指针也是指针,它指向的是某种特定类型,函数的类型由它的返回值和形参类型共同决定与函数名无关。
要想声明一个可以声明一个可以指向该函数的指针,只需要用指针替换函数名。

2.使用函数指针
当我们把函数名当做一个值使用的时候,该函数自动的转换为指针。
此外,还能直接使用指向函数的指针调用该函数,无需提前解引用该指针。
在指向不同函数类型的指针间不存在转换规则。但是可以为函数指针赋予nullptr或者值为0的整型常量表达式,表示该指针没有指向任何一个函数。
重载函数的指针:
当使用重载函数时,上下文必须清晰的界定到底应该选哪个函数。
编译器通过指针类型决定选用哪个函数,指针类型必须与重载函数中的某一个精确匹配。

    函数指针形参(还记得回调函数吗?就是它了)
    不能定义函数类型的形参,但是形参可以是指向函数的指针。此时,形参看起来是函数类型,实际上却是当成指针使用。

    返回指向函数的指针:
    可以返回指向函数类型的指针。我们必须把返回类型写成指针形式,编译器不会自动的将函数返回类型当成对应的指针来处理。

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址