作用域:就是一个标识符能够起作用的程序范围。
标准C语言范围有:文件、函数、程序块和函数原型;
C++除以上4种还有:类和名字空间,其中名字空间可以跨文件。
标号(label)是具有函数作用域的惟一一种标识符。一般用在goto语句中。
局部变量的作用域:程序块
任何函数、类型定义及名字空间定义之外的标示符(包括函数定义、类型定义):文件作用域
函数原型中的形参名称:函数原型作用域的唯一一种标识符
访问规则:在类作用域中,类的非静态成员函数可以直接访问类的其它任何成员;但在类作用域外,只能通过类的对象、对象指针及对象引用来访问类成员。
建议1:尽管语法允许,但最好不要在内层程序块中定义会遮蔽外层程序快中的同名标示符,否则会损害程序的可读性。
当局部变量与某一个全局变量同名时,在函数内部可以通过一元作用域解析运算符(::)来引用全局变量,例如:::g_iCount++。