如果对象是静态的,C++ 会计算每次调用的 sizeof
C++ does sizeof calculate every call if object is static
假设我有一个对象的静态数组,其大小无法更改。
struct vector2 { //8 Bytes
float x, y;
};
计算机是否在每次调用 sizeof
时计算大小,还是存储在某处?如果不是,它的性能是否与存储在某处的性能相同?
std::cout << sizeof(vector2) << std::endl;
std::cout << sizeof(vector2) << std::endl;
这和
一样快吗
Byte sizeOfVector2 = sizeof(vector2);
std::cout << sizeOfVector2 << std::endl;
std::cout << sizeOfVector2 << std::endl;
sizeof
是在编译时计算的。
sizeof
运算符在编译时计算。
假设我有一个对象的静态数组,其大小无法更改。
struct vector2 { //8 Bytes
float x, y;
};
计算机是否在每次调用 sizeof
时计算大小,还是存储在某处?如果不是,它的性能是否与存储在某处的性能相同?
std::cout << sizeof(vector2) << std::endl;
std::cout << sizeof(vector2) << std::endl;
这和
一样快吗Byte sizeOfVector2 = sizeof(vector2);
std::cout << sizeOfVector2 << std::endl;
std::cout << sizeOfVector2 << std::endl;
sizeof
是在编译时计算的。
sizeof
运算符在编译时计算。