在C++中,我试图决定是否使用结构或类。到目前为止,我了解到两者或多或少是相同的,但是当需要私有变量或对执行操作的对象的概念进行分组时,更多地使用类。
但是,我想知道的是:在类中包含函数是否会增加内存需求(而不是有结构,函数是分开的)?
下面是一个例子
class Vector2D {
public:
int x;
int y;
Vector2D();
getMagnitude();
Normalize();
}与
struct Vector2D {
int x;
int y;
}
// Some functions defined separately
getMagnitude(Vector2D v);
Normalize(Vector2D v);如果我有一些其他的向量函数,比如说,把两个向量函数相加在一起,并且我有一个向量类,那么如果这些向量函数包含在类中,那么像addToVector(Vector2D v2)这样的函数,或者将这些多向量函数保持在类之外,这样就可以得到addToVector(Vector2D v,Vector2D v2)吗?
我理解第二个问题可能倾向于意见,但如果有一个“最佳实践”定义的方式,我想知道。
谢谢
发布于 2021-06-24 02:09:50
类与结构的
C++效率
结构是阶级。两者之间的效率为零。
在类中包含函数是否会增加内存需求(而不是将函数分开)?
不是的。成员函数的“内存需求”与非成员函数之间没有实际差别。
此外,结构可以有成员函数。所有类都可以有成员函数,而结构是类。
https://stackoverflow.com/questions/68108804
复制相似问题