减少代码的重复书写C#游戏开发快速入门大学霸

减少代码的重复书写C#游戏开发快速入门大学霸

C#游戏开发快速入门

4.6  减少代码的重复书写减少代码的重复书写C#游戏开发快速入门大学霸

脚本中的方法,对于游戏对象而言,意义在于它可以控制游戏对象的行为逻辑,这是方法对于游戏效果的意义。方法对于脚本代码的书写,同样具有意义,那就是它可以帮助减少代码的重复书写。

本章在介绍方法时,曾将方法与变量做了简单比较,对比的过程中说过,方法也可以看做是一个存储单元,只不过里面存储的不是数据,而是一条或者多条语句。就这个意义而言,可以认为如果在方法中放入多条会在脚本中被重复使用的语句,并使用方法名作为这些语句的指代。那么,脚本中所有需要书写这多行代码的地方,都可以使用方法名(即方法的调用)来代替。例如,脚本中有下面的代码减少代码的重复书写C#游戏开发快速入门大学霸:

01     using UnityEngine;

02     using System.Collections;

03

04     public class MyScript : MonoBehaviour

05     {

06              private int number1;

07              private int number2;

08              private int number3;

09              private int number;

10              void Start()

11              {

12                       number1 = 3;

13                       number2 = 5;

14                       number3 = 4;

15                       number1 *= number1;

16                       number2 *= number2;

17                       number = number1 + number2;

18                       Debug.Log(“number1*number1 + number2*number2 = ” + number);

19

20                       number1 = 3;

21                       number2 = 5;

22                       number3 = 4;

23                       number1 *= number1;

24                       number3 *= number3;

25                       number = number1 + number3;

26                       Debug.Log(“number1*number1 + number3*number3 = ” + number);

27              }

28     }

减少代码的重复书写C#游戏开发快速入门大学霸脚本中有3个变量:number1、number2和number3。为了计算number1与number2的平方和,代码中使用了12~18行,一共7行的代码。同样的,为了计算number1与number3的平方和,代码中使用了20~26行,一共7行的代码。如果在脚本中定义方法的话,就不用书写这么多类似的代码了,使用定义了方法的脚本以后,脚本中的代码如下:

01     using UnityEngine;

02     using System.Collections;

03

04     public class MyScript : MonoBehaviour

05     {

06              private int number1;

07              private int number2;

08              private int number3;

09              private int number;

10              void Start()

11              {

12                       number1 = 3;

13                       number2 = 5;

14                       number3 = 4;

15                       Debug.Log(“number1*number1 + number2*number2 = ” + AddTwoNumber(number1,number2));

16                       Debug.Log(“number1*number1 + number3*number3 = ” + AddTwoNumber(number1,number3));

17              }

18              int AddTwoNumber(int i1,int i2)

19              {

20                       i1 *= i1;

21                       i2 *= i2;

22                       return i1 + i2;

23              }

24     }

相比于之前使用的14行代码,这里只使用了5行代码!但是两个脚本实现的效果是一样的,如图4-11所示。

图4-11  Console视图输出了两个数平方和的计算结果

Comments are closed.