C++访问控制

目录

一,C语言可见性

二,C++可见性

三,嵌套类、内部类


一,C语言可见性

C语言存储类别、存储区一文中我总结了C语言中变量的可见性(作用域、链接属性)

除了变量,函数、类型、宏等也有可见性,他们的可见性只取决于作用域,而他们的作用域都是文件作用域。

PS:不能在函数内定义函数,只能在文件内定义,函数的作用域只能是文件作用域。

宏可以在函数内、块内定义,但是作用域仍然是文件(从定义到文件尾)。

二,C++可见性

C++的作用域,除了块作用域、文件作用域、函数作用域、函数原型作用域之外,还有命名空间作用域、类作用域。

类的成员也有链接属性,有静态函数和静态成员变量。

除了作用域和链接属性,类还有访问控制的关键字,public, private, protect, friend

参考面向对象程序设计(2)可见性、封装、继承、友元

三,嵌套类、内部类

一般类的作用域都是命名空间或者文件,但是类就像普通的int变量一样,可以在类里面定义,也可以在块内定义。

类里面定义类,叫嵌套类。

块里面定义类,叫内部类。

猜你喜欢

转载自blog.csdn.net/nameofcsdn/article/details/120958314