[Unity] C#中级编程 - 03 - 重载

[Unity中文课堂教程] C#中级编程 - 03 - 重载

原教程视频地址:

《[Unity中文课堂教程预告片] C#中级编程_哔哩哔哩_bilibili》

《C#中级编程 - Unity中文课堂 (u3d.cn)》

《C# 多态性 | 菜鸟教程 (runoob.com)》(函数重载)

内容短小精悍简练,每节只有几分钟。很适合用来预习和复习。

主要代码内容

  • 一般认为,函数名即函数的唯一标识,应当具有不可重复性。
  • c#的语法中,将参数类型参数个数也认定为是函数的标识之一。允许函数名相同,在函数名相同时,不同的参数类型参数个数将作为区分不同函数的条件。这种情况称为函数重载
  • 注意,函数名和参数相同,只有返回值不同,是不允许的。

脚本①

public class Exercise_4_5 : MonoBehaviour
{
	public int Add_0(int num_1, int num_2)
	{
		Debug.Log("int");
		return num_1 + num_2;
	}
		
	/*public string Add_0(int num_1, int num_2)
	{		
		return "int"; 	// 报错
	}*/
	
	public string Add_0(string str_1, string str_2)
	{
		Debug.Log("string");
		return str_1 + str_2;
	}
}

脚本②

public class Exercise_4_6 : MonoBehaviour
{
    void Start()
    {
        // Exercise_4_5 myClass = new Exercise_4_5();
		Exercise_4_5 myClass = gameObject.AddComponent<Exercise_4_5>();
		
		myClass.Add_0(1,2);		// 自动选择参数匹配的int类型
		
		myClass.Add_0("4","3");	// 同上
    }
}
  • 总结:
  1. 函数重载在unity的API中很常见,是很重要基础的知识点之一。比如函数:Animator.SetFloat(),就代表了4个不同的函数。《Animator-SetFloat - Unity 脚本 API》

你可能感兴趣的:(#,unity,csharp,学习笔记,unity,c#,游戏引擎)