【发布时间】:2013-07-24 04:35:49
【问题描述】:
我刚刚观察到与 C++ 相比,python 中的类有何不同。 像, 在 C++ 中
Class test
{
int a,b;
Void func()
{
}
}
在上面的类模板中,a和b只是在模板中定义的Object变量。
然而,在 python 中,您无法在类定义中指定类可以具有的对象变量和所有对象变量。
喜欢,
Class student(self):
def func(self,x)
pass
在上面的类模板中,我们不能定义任何对象变量。 dir (student) 只会给出函数和类变量的列表。
假设如果要实例化这个类的一个对象,Say,S。如果我想给那个学生起个名字,那么, S.name = " " 就可以了
现在 dir(S) 将显示 name 属性,而 dir(student) 将没有 name 字段 对我来说,这听起来有点奇怪。
python 的解释功能允许向对象添加任意数量的字段。
我遇到的问题是
为什么他们没有提供在类定义中定义变量的功能? , 和
如何在实例化过程中保留内存并在向对象添加新变量时修改内存?
谢谢,
-卡利斯
【问题讨论】:
-
到底是什么问题?
-
帖子中完全没有“模板”。
标签: c++ python class definition