当前位置: 首页 > news >正文

c++ 156函数

inline内联函数

#include<iostream>
using namespace std;inline void printA()
{int a = 10;cout << "a:" << a << endl;}void main()
{//printA();//c++编译器会这样 把函数体机械地放到main函数里面{int a = 10;cout << "a:" << a << endl;}return;
}
//带参数的宏
#define MYFUNC(a,b) ((a)<(b)?(a):(b))inline int myfunc(int a, int b)
{return  a < b ? a : b;
}
int main13() {int a = 1;int b = 3;int c = myfunc(++a, b);// int c = MYFUNC(++a, b);  //宏替换 并展开((++a)<(b)?(++a):(b))printf("a=%d\n", a);printf("b=%d\n", b);printf("c=%d\n", c);system("pause");return 0;
}
//默认参数
void myPrint(int x=3)
//void myPrint(int m,int n,int x=3) 如果默认参数出现 后面不允许
{cout << x << endl;}
//函数占位参数 函数调用时必须写够参数
void function1(int a,int b,int )
{cout << "a:" << a <<"b:" << b << endl;
}
void main14()
{function1(1, 2, 3);myPrint(4);return;
}
//默认参数和占位参数在一起int func2(int a,int b,int =0)
{cout << "a:" << a << "b:" << b << endl;
}
void mian()
{//func2(1,2);func2(1,2,3);return;
}
#include <iostream>
using namespace std;
// 函数重载
// 名称 参数 返回值(不是判断标准)
void myPrint(int a)
{cout << "a: " << a << endl;
}void myPrint(const char* p)
{cout << "p: " << p << endl;
}void myPrint(int a, int b)
{cout << "a: " << a << endl;cout << "b: " << b << endl;
}// 主函数
int main()
{myPrint(1);myPrint("1111dfs");myPrint(1, 3);return 0;
}
//函数默认参数和重载在一起
void myfunction(int a, int b, int c = 0)
{cout << "a: " << a << "b: " << b << "c: " << c << endl;
}
void myfunction(int a, int b)
{cout << "a: " << a << "b: " << b << endl;}
void myfunction(int a)
{cout << "a: " << a  << endl;}
void main()
{//myfunction(1, 2);//出现二义性 不知道调用哪个return;}
#include <iostream>
using namespace std;
// 函数重载
// 名称 参数 返回值(不是判断标准)
void myPrint(int a)
{cout << "a: " << a << endl;
}void myPrint(const char* p)
{cout << "p: " << p << endl;
}void myPrint(int a, int b)
{cout << "a: " << a << endl;cout << "b: " << b << endl;
}// 主函数
int main16()
{myPrint(1);myPrint("1111dfs");myPrint(1, 3);return 0;
}
//函数默认参数和重载在一起
void myfunction(int a, int b, int c = 0)
{cout << "a: " << a << "b: " << b << "c: " << c << endl;
}
void myfunction(int a, int b)
{cout << "a: " << a << "b: " << b << endl;}
void myfunction(int a)
{cout << "a: " << a  << endl;}
void main17()
{//myfunction(1, 2);//出现二义性 不知道调用哪个return;}
//函数重载和函数指针在一起
//声明一个函数类型
//typedef void (myTypeFunc)(int a, int b); //myTypeFunc 用来定义函数指针
// myTypeFunc* myfuncp=NULL;//定义一个函数指针 这个指针指向函数入口地址//声明一个函数指针类型
typedef void (*myTypeFunc)(int a, int b); //声明了一个指针数据类型 myTypeFunc 用来定义函数指针// myTypeFunc cp = NULL; 通过函数指针类型 定义了一个指针//声明一个函数指针变量
//void (* myVarPfunc)(int a, int b);
void myfunc23(int a)
{printf("a:%d", a);
}
void myfunc23(char *p)
{printf("p:%s", p);
}
void myfunc23(int a,int b)
{printf("a:%d", a);printf("b:%d", b);
}
void main()
{//  myTypeFunc* myfuncp=NULL;//定义一个函数指针 这个指针指向函数入口地址myTypeFunc fp= myfunc23;//定义一个函数指针变量fp(1,3);
}

在这里插入图片描述
所传的类型不同

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【web安全】SQL注入篇
  • 网安新声 | 智能家居时代,用户隐私谁来守护
  • ACW快凝科技:打造无漏坚固新纪元,环保高效封堵未来
  • CRM系统为贷款中介行业插上科技的翅膀
  • 数据赋能(195)——开发:数据应用——概述、关注焦点
  • 宏定义## 的使用
  • Modelsim UVM windows环境搭建
  • Vue3实时更新时间(年-月-日 时:分:秒)
  • Fréchet Inception Distance(FID)原理
  • Mysql中的锁机制详解
  • 屏幕像素初步认识
  • 网站如何针对不同的DDOS进行防御?
  • 步进电机基本知识
  • 前端框架的演变与选择
  • P7492 [传智杯 #3 决赛] 序列
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • C++回声服务器_9-epoll边缘触发模式版本服务器
  • C语言笔记(第一章:C语言编程)
  • JavaScript设计模式之工厂模式
  • jquery ajax学习笔记
  • leetcode386. Lexicographical Numbers
  • Linux Process Manage
  • React-redux的原理以及使用
  • springboot_database项目介绍
  • Vue 动态创建 component
  • 成为一名优秀的Developer的书单
  • 代理模式
  • 互联网大裁员:Java程序员失工作,焉知不能进ali?
  • 面试总结JavaScript篇
  • 微信小程序上拉加载:onReachBottom详解+设置触发距离
  • 如何在 Intellij IDEA 更高效地将应用部署到容器服务 Kubernetes ...
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • # 职场生活之道:善于团结
  • #QT(串口助手-界面)
  • #我与Java虚拟机的故事#连载13:有这本书就够了
  • (10)ATF MMU转换表
  • (C语言)共用体union的用法举例
  • (delphi11最新学习资料) Object Pascal 学习笔记---第13章第1节 (全局数据、栈和堆)
  • (delphi11最新学习资料) Object Pascal 学习笔记---第7章第3节(封装和窗体)
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (阿里巴巴 dubbo,有数据库,可执行 )dubbo zookeeper spring demo
  • (超简单)使用vuepress搭建自己的博客并部署到github pages上
  • (二十九)STL map容器(映射)与STL pair容器(值对)
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (七)Appdesigner-初步入门及常用组件的使用方法说明
  • (四)Controller接口控制器详解(三)
  • (算法)Travel Information Center
  • (转)jQuery 基础
  • (转载)PyTorch代码规范最佳实践和样式指南
  • ***利用Ms05002溢出找“肉鸡
  • .describe() python_Python-Win32com-Excel
  • .Net 8.0 新的变化
  • .net core IResultFilter 的 OnResultExecuted和OnResultExecuting的区别
  • .Net Core 笔试1
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃