当我使用多个嵌套结构/类(有点像使用多维堆数组)时,是否会有性能损失?还是这只是语言的组织特性,使其更容易跟踪数据,并且编译器实际上并没有看到任何区别?
谢谢
当我使用多个嵌套结构/类(有点像使用多维堆数组)时,是否会有性能损失?还是这只是语言的组织特性,使其更容易跟踪数据,并且编译器实际上并没有看到任何区别?
谢谢
#include <iostream>
using namespace std; // So sue me
struct A {
double d;
int i;
};
struct B {
int j;
int k;
int l;
};
struct AB {
A a;
B b;
};
struct C {
double d;
int i;
int j;
int k;
int l;
};
int main() {
cout << sizeof(AB) << endl; // 32
cout << sizeof(C) << endl; // 24
}
不应该有任何性能或内存惩罚。它们只是语法糖,使程序员更容易编写代码。
简短回答:不行。