在C ++和其他受影响的语言中,有一个称为Structure(struct
)的构造,另一个称为class
。两者都能够容纳函数和变量。一些区别是:
- 类在堆中
struct
被分配了内存,在堆栈中被分配了内存(注意:这对于C ++是错误的,但是在OP所谓的“受影响的语言”中可能是正确的) - 默认情况下,类变量是私有的,而
struct
它们是公共的
我的问题是:是否以struct
某种方式放弃了上课?如果是这样,为什么?除了上述差异之外,a struct
可以完成类所具有的所有相同功能。那么为什么要放弃呢?
放弃,我的意思是为什么一个要比另一个要用。
—
prometheuspk,
我想您的问题本身就可以回答。
—
Umair A.
类和结构之间的区别取决于语言。从C ++中学到的一些知识实际上不适用于C#。
—
工作
嗯 在C ++中,您可以在堆栈或堆上分配对象。哪里都行。
—
jojo 2011年
错,错,错。堆栈与堆无关。
—
亚伦诺特,2011年