gpt4 book ai didi

来自类的 C++ memcpy 数据?

转载 作者:行者123 更新时间:2023-11-28 01:32:28 28 4
gpt4 key购买 nike

我有一个小问题,如果我有一个有成员的类,例如像这样

class CSelectPlayerData : public SqlQuery
{
public:
BYTE m_Member;
WORD m_Member2;

Load_Data(CSelectPlayerData, "SELECT Member, Member2 FROM TABLE);
MAKE_PARAM(m_Member, m_Member2);
}

这段代码的作用是从 sql 表中加载数据,并将它们分配给 Member 和 Member2。我现在的问题是,如果我使用查询并执行如下操作:

INIT_QUERY(db, CSelectPlayerData) //this also executes the LoadData etc (it's macro)
pPlayer->m_Member = query->m_Member;
...

然后单独做一个类,CPlayer

CPlayer Player;

具有相同的参数(Member、Member2),我能否以某种方式将查询类的值存储到播放器,这样我就不必执行

pPlayer->m_... = query->m_...

我知道它并没有那么有用,但它有点只是为了我的额外知识。感谢您的回答。

最佳答案

memcpy 在任何具有 std::is_trivially_copyable 特征的类型上都是安全的。

然而,许多类不是可简单复制的,在这种情况下,您应该使用复制构造函数。

关于来自类的 C++ memcpy 数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50895646/

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