函数 (概念,定义,重载,参数)
来源:互联网 发布:网络用语鱼是什么意思 编辑:程序博客网 时间:2024/06/05 19:54
函数的概念:
函数就是定义在类中具有特定功能的一段独立小程序。(函数也称方法)
函数的定义:
函数可以帮助我们把功能性,逻辑性的代码进行封装,从而实现重复调用,提高了程序的复用性和效率。
定义函数的格式:
修饰符返回值类型 函数名 (参数类型 参数1,参数类型,参数2,...参数类型,参数n)
{
执行语句;
return 返回值;
}
- 函数名:函数的名字,一定要按照命名规范起名,表明函数的作用。
- 返回值:表示这个函数运行后最后的结果。
- 返回值类型:取决于返回值的类型。
- return:表示将返回值返回的动作,会把返回值返回到调用者;同时还能结束函数功能。
- 参数列表(小括号中的内容):定义这个函数所需要的参与运算的未知数据,并且每一个数据都要有相应的数据类型,可以理解为变量。
- 修饰符:修饰这是个什么样的函数,可以有多个修饰符。
- 函数体:函数运行的主体部分,以大括号表示作用范围。
函数的用法:
我们常用的两种方法:直接调用,赋值调用。
注意:函数的返回猴子有无要根据函数的具体功能而定,如果,没有返回值,那么返回值类型就写void,void 也是关键字。函数参数真实参与运算的是调用传入的实际参数,应能分别实参和形参这两种命名的区别。
函数的特点:
定义函数可以将功能代码进行封装。
定义函数便于对该功能进行复用。
函数的出现提高了代码的复用性。
函数只有被调用才会执行。
如果函数没有具体的返回值,返回值类型就用void来表示。那么函数中的return语句可以省略不写。
return有两个作用:1,返回值。2结束函数功能。如果带有返回值,则return关键字必不可少,并且注意多分支结构都必须写明返回。
函数中只能调用其他函数,不能在函数内定义函数。
定义函数是,函数的结果应该返回给调用者,交个调用者处理
函数的重载:
概念:重载(overload):同一个类中允许存在一个以上的同名函数,只要他们的参数个数或者参数类型不同即可;
public int add (int x, int y)//获取两个整数的和{return x + y;}//获取两个小数的和public double add(double x, double y){return x + y;}//获取三个整数的和public int add (int x,int y, int z){return x + y + z;}
class Demo{static voidMain(string[] args){Add( 1,2 ,1 ); //第三个参数1 将取代原有参数的区别Add( 1,2 ); //第三个参数没有,则默认输入可选参数}static int Add(inta,int b ,int c = 0 ) //可选参数的写法{System.Console.Print("a :{0},b:{1},c:{2} ",a,b,c);}}
函数重载和可选参数的区别:
可选参数,是在声明方法的某个参数的时候为其指定一个默认值,在调用该方法的时候如果采用该默认值,你就无须指定该参数.换句话说,在没有明确指定该参数值时,函数将自动使用预先指定的默认值.
可选参数实例:
所有可选参数必须写在普通参数的右边,如果写在普通参数的左边,则会编译报错
重载匹配原则分析:
1.当调用者匹配类中具有重载函数时,先找出符合参数个数的所有重载函数.
2.在符合参数个数的前提下,找到最符合类型的重载函数,如果没有,隐式转换后看是否负责匹配.
3.当符合条件的重载函数不止一个时,优先选择不带可选参数的重载函数.
重载实例:
class Demo{static voidMain(string[] args){Add(1, 2, 1);Add(1, 2, 5.0f);Add(1.0f, 2.0f,5.0f);Add(1, 2);System.Console.ReadLine();}static void Add(int a,int b){System.Console.WriteLine("第一个函数被调用!");System.Console.WriteLine("a :{0} ,b :{1}, ", a, b );}static void Add(int a,int b, int c = 0){System.Console.WriteLine("第二个函数被调用!");System.Console.WriteLine("a :{0} ,b :{1},c :{2} ", a, b, c);}static void Add(int a,int b, float c){System.Console.WriteLine("第三个函数被调用!");System.Console.WriteLine("a :{0} ,b :{1},c :{2} ", a, b, c);}static void Add(doublea, double b, double c){System.Console.WriteLine("第四个函数被调用!");System.Console.WriteLine("a :{0} ,b :{1},c :{2} ", a, b, c);}}
阅读全文
0 0
- 函数 (概念,定义,重载,参数)
- python---函数(概念、可选参数、默认参数、健壮性、错误信息定义)
- 函数重载概念本质
- 函数的概念、定义、调用、参数传递、作用域
- 函数重载,函数重写(虚函数重写),函数重定义(非虚函数重写),以及名称覆盖(函数重定义时,与父类参数个数不同,或是参数类型不同)
- 函数重载 / 默认参数
- 8.1 函数重载的概念
- 重载、重定义、虚函数
- 函数重载重写重定义
- 函数通用性之重载与(导出模板概念)
- 容器find_if函数定义和其第三个参数重载的疑问
- 函数重载、重写(覆盖)和重定义(隐藏)
- 函数参数默认值定义
- C++函数其他(重载、默认参数、内联、函数模板)
- 指针函数概念与定义
- c++三大概念要分清--重载,隐藏(重定义),覆盖(重写)
- 默认参数与函数重载
- 函数重载与缺省参数
- 数组(随机生成,三种排序,二分查找)
- 算法训练 最小乘积(基本型)
- Android 5.0 6.0 7.0的新特性
- 经典小例
- 算法训练 K好数
- 函数 (概念,定义,重载,参数)
- C sharp 实现 猜数…
- 用编程语言写一封情书
- 游戏怎么分类
- MYSQL 大于号,小于号
- C# 中产生10个不重复的随机数
- 算法训练 矩阵乘法
- C# 实现求一个字符串的子串问题
- 算法训练 关联矩阵