gpt4 book ai didi

c++ - 保留指定的原始大小

转载 作者:行者123 更新时间:2023-11-30 03:05:48 25 4
gpt4 key购买 nike

如果我有一个类如下:

class MyData
{
public:
MyData( const AnotherObject& obj );

int getA() { return A; }
int getB() { return B; }

private:
int A : 16;
int B : 16;
}

我指定变量 A 和 B 只占用 16 位的事实会被 getter 渲染为毫无意义吗?如果我传递此类的一个实例,而其他对象想要访问 A 和 B 但我想保留我指定的大小,我会丢失它吗,因为 getA() 和 getB() 将返回 32 位拷贝?

将 A 和 B 公开并根据需要直接访问它们会更好吗?这会保留尺寸吗?或者我应该从 getter 返回对它们的引用?

最佳答案

getter 会将 16 位值转换为 int 的大小在系统值上并将返回 32 位拷贝(如果大小为 32 位)。

您要实现的目标是什么?为什么不使用 int16_t来自 <cstdint>

关于c++ - 保留指定的原始大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7468167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com