class Sample:
def __init__(self):
self.__private_mem = "Can be accessed only by member functions"
self.public_mem = "Can be accessed as object properties outside the class"
sample = Sample()
print(sample.public_mem)
print(sample.__private_mem) # will raise an Error
在python中,可以通过将dunders(双下划线)放在成员名称之前来声明私有成员,如下所示:
但是,我想在C语言中没有这样的东西,因为它不是面向对象的
Python中的受保护字段和专用字段有一个命名约定: 一个下划线的前缀表示受保护,两个下划线表示私有。但这并不是真正的强制执行。详情如下: https://www.tutorialsteacher.com/python/private-and-protected-access-modifiers-in-python
没有加上一个或两个下划线前缀的所有内容都是公共的
在C语言中,全局变量和函数可以从其他源文件中的函数访问,除非它们声明为
static
。与private
不完全相同,但C不是面向对象的,因此这里不存在类的概念相关问题 更多 >
编程相关推荐