2013年(6)
分类: Windows平台
2013-04-12 17:04:22
一个子程序与外界的直接联系越少,则内聚性越好,而与外界联系,就是全局变量和参数,所以参数和全局变量越少越好,否则程序很难维护,可读性也不高。而且,全局变量占用固定地址不变,在函数中,或局部要读取它时还得到外界去找,而且在一个大点的程序中如果大量使用全局变量会降低程序的可读性,而且占用了大量的有限空间,降低运行速度。
全局变量有些时候是无法避免的,只能尽量减少全局变量。我能想到的主要有三个方面:
1、通过函数参数传递数据或指针。对于回调函数,通常有一个参数是自定义的数据指针,可以利用这个参数传递类指针或者自定义一个结构的指针。
2、只在某一个函数中使用的变量可以定义为局部静态变量(在函数内部定义,前面加static修饰)。
3、把全局变量定义成一个结构,定义一个全局的结构体变量。