深入解析C++可见性与生命期的区别

  对于C++,中国E盟技术小编我也曾深入研究过,不过也请C++多多指教~那接下来先附上这篇深入解析C++可见性与生命期的区别给小伙伴们看看,希望这个知识点刚好能够帮助到你。

  变量的可见性(即作用域)和生命期既有区别,又有联系。

  一个变量在程序的某处没有可见性,但生命期任然可以存在,比如局部静态变量的可见性在它所在的函数里面,在函数外部不可访问,但是它的生命期确是整个程序的运行期间;而一个变量生命期结束,它也就没有了可见性,就像局部变量,随着栈空间的释放,它也就不存在了,所以外部无法访问。

  决定一个变量的可见性是变量被声明的位置(就像局部静态变量,由于在函数里面声明,所以只能在函数里面可见),而决定一个变量的生命期是变量在内存中的位置(就像静态局部变量不是分配在栈上,而是分配在内存静态存储区,因此生命期也和普通局部变量不一样).

  以上就是深入解析C++可见性与生命期的区别,希望对大家有所帮助,如有不足之处,请留言,小编会及时更正。感谢朋友们对中国E盟技术频道的支持!