[英]C++ Object vs Struct Memory Overhead
我需要为图像处理创建非常大的RGB值数组。 对它们执行的实际操作很简单-只需正交投影即可看到两种颜色的相似程度-但每一位都取决于内存。 我正在考虑将图像作为指向其中包含3个字符的结构的双指针来存储,我认为这是最有效的内存存储方式,但是我知道通常建议使用包装器类。 问题在于,创建类与结构以及使用某种包装器与使用双指针相比,内存开销是多么微不足道。
两者之间绝对没有区别
class X
{
public:
T1 x;
T2 y;
T3 z;
}
和
struct X
{
T1 x;
T2 y;
T3 z;
};
如果您将虚拟函数添加到类中,是的,它将添加到存储中。 但没有人会做任何区别class
和struct
(事实上,它有可能在虚拟的成员struct
太-虽然它是典型的区分struct
和class
由于只需对类成员函数和(非平凡)构造函数) 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.