C++函数指针

[C++11类型别名 cpp]——为函数指针定义别名 这里定义了一个名为fp的函数指针,它指向一个返回值为int型,带有两个int型参数的函数。如果我们需要多次使用这个类型声明,或者函数指针类型甚至出现在类成员变量或模板参数中,那么这种冗长的类型声明语句将极大地影响代码的可读性和可维护性。除此之外,在C++11中还增加了一种特殊的类型别名语法——using关键字,使得我们可以更加灵活地为类型定义别名。总之,在C++11中,除了原有的typedef语法外,我们还可以使用using关键字来为任意类型定义别名,这使得代码更加简明扼要,便于理解和维护。 阅读详情

一、基本语法

现有一函数如下

void foo(int a, int b)
{
    cout << a + b << endl;
}

1、直接定义函数指针

复制代码
1      void (*pf)(int, int);   // 定义函数指针变量pf
2      pf = foo;               // 赋值使其指向函数foo --- (1)
3      pf = &foo;              // 赋值使其指向函数foo --- (2)
4                              // (1)与(2)均ok
5  
6      pf(6, 7);               // 通过函数指针调用函数:输出13 --- (3)
7      (*pf)(6, 7);            // 通过函数指针调用函数:输出13 --- (4)
8                              // (3)与(4)均ok
复制代码

2、利用类型别名定义

typedef void (*FunPtr)(int, int);  // 定义函数指针类型别名
复制代码
1      FunPtr pf;              // 定义函数指针变量pf
2      pf = foo;               // 赋值使其指向函数foo --- (1)
3      pf = &foo;              // 赋值使其指向函数foo --- (2)
4                              // (1)与(2)均ok
5  
6      pf(6, 7);               // 通过函数指针调用函数:输出13 --- (3)
7      (*pf)(6, 7);            // 通过函数指针调用函数:输出13 --- (4)
8                              // (3)与(4)均ok
复制代码
Dify 深度进阶:从入门到精通AI应用构建 《Dify进阶指南:从基础到高阶的AI应用开发技巧》 本文深入探讨Dify平台的高级功能与应用开发技巧。首先强调核心概念的深化,包括提示词工程进阶、知识库高效管理和模型参数优化。重点介绍智能体应用的开发方法,如何让AI具备自主规划与执行能力。同时讲解工作流编排、前端集成等实用技术,并分享应用运营优化、成本控制等实践经验。文章还展望了Dify生态的发展趋势,为开发者提供从基础到进阶的完整学习路径,助力打造更智能高效的AI应用。 阅读详情

相关推荐

TDDFT计算软件Octopus学习笔记(二):基态计算(Si)

本文以硅为例,来进行基态计算。

陈啸的博客 7305

c++ 将函数指针存入map中调用

1、普通函数指针 #include "stdafx.h" #include<map> #include<string> #include"FunMap.h" #include<stdio.h> typedef int(*FUN1)(int a); int a(int i) { printf("类外函数指针存入map调用%d\n",i); return 9; } int main() { map <int, FUN1> mapfun; mapf

bhbhhyg的博客 4513

因时机器人-灵巧手配置方案(Ubuntu18.04)

因时机器人-灵巧手配置方案(Ubuntu18.04)

CH_monsy的博客 3844

c++函数指针

函数指针函数指针基础知识深入探讨函数指针使用typedef进行简化 函数指针基础知识 1.完成函数指针需要的工作: 获取函数的地址 声明一个函数指针 使用函数指针来调用函数 1.获取函数地址:只要使用函数名即可。也就是说,如果think()是一个函数,则think()就是该函数的地址。要将函数作为参数进行传递,必须传递函数名。一定要区分传递的是函数的地址还是函数的返回值: process(think); thought(think()); process()调用使得process()函数能够在其内部调

weixin_50866517的博客 1万+

数据结构(超详细讲解!!)第十七节 队列应用(杨辉三角)

杨辉三角

2201_76115387的博客 1375

PCL 点云按强度渲染颜色【2025最新版】

点云按反射强度渲染颜色,博客长期更新,本文最近更新时间为:2025年1月6日。

点云侠的博客 2万+

C++函数指针用法

C++函数指针详细理解 函数指针初识 函数指针是指向函数的指针,并不等于函数,它能够执行函数的操作,可以跟指针变量一起来理解,其基本声明格式为: type (*ptrname)(形参列表); 例子,声明一个比较两个字符串大小的函数指针 bool (*cp)(const string s1, const string s2); 需要注意的是,**不要去掉括号!!!**如果去掉括号,含义就变成了返回一个bool指针的函数的声明! 函数指针指向函数类型 再使用函数指针时,函数指针可以发挥与函数相同的功效,即

qq_48201696的博客 8374

2026 AI Agent Harness Engineering 生态报告:开源工具链的现状与未来趋势

IEEE P2863-2025《通用人工智能自主代理技术架构与评估规范》于2025年11月正式发布,将AI Agent(通用人工智能自主代理)定义为:一种具备感知(Perception)、记忆(Memory)、推理(Reasoning)、规划(Planning)、行动(Action)五大核心能力闭环,能够在无显式指令覆盖全部环节的前提下,自主完成特定领域或开放领域复杂任务的智能实体。

AI 算法实战派 496

C++中函数指针的使用

在C/C++中存在着函数指针,即指向函数的指针。我目前已知的两种使用方法是:    #include #include typedef int* PINNT; #define PP int* int funcA(int a,int b); int funcB(int* a,int *b); int main(int argc, char *argv[]) { int (*func)

sruru的专栏 6万+

YOLOv11全网首发:注意力独家魔改 | 具有切片操作的SimAM注意力,魔改SimAM助力小目标检测

1)直接作为注意力使用,效果秒杀SimAM;2)高效和卷积结合,代替原始网络的卷积操作;

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1570

Cesium 场景特效之【全球海洋】GL2兼容版

Cesium 场景特效之【全球海洋】GL2兼容版

喜欢钻研前端和分享技术 1272

C++函数指针详解

详细的介绍了函数指针的使用方式。

韩小非的博客 4648

Python爬虫实战:高效爬取华尔街日报文章的技术与代码详解

在当今信息爆炸的时代,金融数据和分析对于投资者、研究人员和企业决策者来说至关重要。华尔街日报(WSJ)作为全球最具影响力的财经媒体之一,其文章内容具有极高的价值。本文将详细介绍如何使用Python最新技术构建一个高效、稳定的华尔街日报文章爬虫,涵盖从基础到高级的各种技术要点。本文详细介绍了如何使用Python最新技术构建一个高效、稳定的华尔街日报文章爬虫。我们从基础爬虫实现开始,逐步添加了高级功能如分布式处理、反反爬虫策略、数据清洗和存储等。异步处理:使用asyncio和httpx实现高性能网络请求。

2201_76125261的博客 385

C++ 函数指针

C++ 函数指针

2201_75772333的博客 1692

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Cpp摘记:函数指针、函数模版、类模板

1. 函数指针 2. 函数模版 3. 类模板

zfoox的摘记 1331

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

C++函数指针学习

C++函数指针学习 博客搬家,原地址:https://langzi989.github.io/2017/09/08/C++函数指针学习/ 使用函数指针的优点 使用函数指针有助于我们设计出更优秀,更简洁更高效的程序。在下面的情景中我们常用到函数指针: 使用函数指针作为参数 使用函数指针作为返回值 使用函数指针作为回调函数 使用函数指针数组 类的静态方法和非静态方法的函数指针 使用函数指针实现动态绑...

langzi989的专栏 1857

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

细究C/C++函数指针

C/C++函数指针,std::function用法

sun_0228的博客 1360

c++效率,函数指针

c++效率,函数指针...- -                                       C++中函数指针数组的妙用  笔者在开发某软件过程中遇到这样一个问题,前级模块传给我二进制数据,输入参数为 char* buffer和 int length,buffer是

执著 4385

C/C++:函数指针

要声明和初始化函数指针,首先需要知道要指向的函数的签名(返回类型和参数类型)。然后,你可以声明一个函数指针变量,并将其初始化为指向特定函数的地址。

2301_79181030的博客 1900

C++ 函数指针的声明与使用

C++函数指针 一 函数指针是什么 1.函数指针是指针 函数指针也是指针的一种,是指针的子集,所以它应该有指针的一些特性; 函数指针也附带了函数的一些特性。 2.函数指针该如何声明? 我们可以和int类型的指针的声明进行比对一下: 声明一个int型指针: int *p ; 声明一个函数型(假如是一个有两个int类型的参数以及一个 int类型的返回值)的指针: int (*pFunc)(int, int); 我们把指针名称提出来看一下, 整形指针 函数指针 int * int (*)(

逢歌的博客 7621

c++函数指针总结

一. 定义 函数指针,即指向函数的指针。 声明格式为: 指向函数返回值类型 (*指针名)(参数表) 举个例子: void f1() { printf("f1(); ");} int f2(int i) { printf("f2(%d);",i); return i+1 } int main() { void (*g1)() =f1; // g1 指向 void()类型的函数 in...

weixin_43937759的博客 937

一个小的C++函数指针示例

C++函数指针示例

losangelx的博客 344

C++ 函数指针

函数指针的基础知识 在C++中运用函数指针首先要完成的工作: 获取函数的地址 声明一个函数指针 使用函数指针来调用函数、 1. 首先是获取函数的指针 获取函数的地址就是使用函数名即可,不用跟参数,比如think( )是一个函数,那么think就是该函数的地址,而think()则是该函数的返回值。因此要注意区分传递的是函数的地址还是函数的返回值。 2. 声明函数指针 声明只想某种数据类型的指针时,必须指定指针指向的类型。同样在声明指向函数的指针时,也必须指定指针指向的...

yh的博客 661
上一篇: const 指针与指向const的指针
下一篇: 指针数组和数组指针的区别
Godwin_Q
博客等级 码龄12年 13粉丝 114原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值