码迷,mamicode.com
首页 > 编程语言 > 详细

[C++程序设计]全局,局部变量

时间:2014-07-17 14:33:29      阅读:209      评论:0      收藏:0      [点我收藏+]

标签:使用   文件   数据   问题   c   c++   

在函数声明中出现的参数名,其作用范围只在 本行的括号内。实际上,编译系统对函数声明中的 变量名是忽略的,即使在调用函数时也没有为它们 分配存储单元。例如

int max(int a,int b);

int max(int x,int y)

{ cout<<x<<y<<endl; cout<<a<<b<<endl; }

//函数声明中出现a、b

//函数定义,形参是x、y //合法,x、y在函数体中有效

//非法,a、b在函数体中无效 编译时认为max函数体中的a和b未经定义。

 

说明:

(1) 设全局变量的作用是增加函数间数据联系的渠 道。

(2) 建议不在必要时不要使用全局变量,因为:

1 全局变量在程序的全部执行过程中都占用存储单 元,而不是仅在需要时才开辟单元。

2 它使函数的通用性降低了,因为在执行函数时要 受到外部变量的影响。如果将一个函数移到另一个文件中,还要将有关的外部变量及其值一起移过去。但若该外部变量与其他文件的变量同名,就会出现 问题,降低了程序的可靠性和通用性。在程序设计 中,在划分模块时要求模块的内聚性强、与其他模 块的耦合性弱。即模块的功能要单一

(不要把许多 互不相干的功能放到一个模块中),与其他模块的 相互影响要尽量少,而用全局变量是不符合这个原则的。

一般要求把程序中的函数做成一个封闭体,除了可 以通过“实参——形参”的渠道与外界发生联系外,

没有其他渠道。这样的程序移植性好,可读性强。

(3) 如果在同一个源文件中,全局变量与局部变量 同名,则在局部变量的作用范围内,全局变量被屏 蔽,即它不起作用。

[C++程序设计]全局,局部变量,布布扣,bubuko.com

[C++程序设计]全局,局部变量

标签:使用   文件   数据   问题   c   c++   

原文地址:http://www.cnblogs.com/galoishelley/p/3850823.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!