摘要:
C++中变量的作用域和生命周期是一个非常关键的概念,它们从两个维度上考虑了变量在C++代码中的生存范围。作用域就是指变量可以访问的范围,生命周期是指变量逻辑上存在的执行周期。在C++代码中,通常以大括号来指定一个作用域,所有在大括号内定义的变量在定义后可以被访问,退出这段区域后,大括号内的变量逻辑上被销毁而不可访问。作用域可以嵌套定义,内层作用域可以访问外层作用域顺序上已经定义的变量,反之则不可。另外在C++中还有一些特殊的作用域与变量,如全局作用域,全局作用域在程序执行周期一直存在,不需要用大括号声明,如果一个变量定义不存在于任意一个大括号内,则视为全局变量,命名空间,命名空间是C++为了更好的管理变量而引入的;命名空间由关键字namespace声明,它相当于一个全局变量的子集,命名空间内可以写入和全局作用域一样的代码,任意代码也可以访问其中的资源,但同时需要加上该命名空间的前缀;静态变量是一种特殊的局部变量,它在程序运行周期一直存在不会被销毁,但访问限制同其他作用域内的限制一直,如果一个全局的变量或者函数由static关键字声明,则表示该资源只能被当前文件的代码段访问,即外部文件不 阅读全文