我如何保护我的分子类变量值,例如键长和NH3 的反转概率,免受作弊引擎用户之类的人的影响(不会减慢很多速度)?
这可以防止外部影响吗?
class molecule
{
public:
    molecule()
    {
    ...
    }
protected:
    int *bond_length;
    int *probability;
}
这更安全吗?
class molecule
{
...
private:
    int *bond_length;
    int *probability;
}
如果以上所有内容都容易受到类似作弊引擎的软件的攻击,那么以下内容是否合乎逻辑?
class molecule
{
public:
    molecule(){... ... ...}
...
...
    //still public
    int *bond_length_fake;
    int *bond_length;
    int *prob_fake;
    int *prob;
}
...
//somewhere in the program
void thread_real_to_fake(void * molecule_parameters)
{
    int bond_length_backup;
    molecule * param=(molecule *)molecule_parameters;
    while(working)
    {
        if((param->bond_length_fake)!=(param->bond_length))
        {
            param->bond_length_fake=param->bond_length;
        }
    }
    _endthread();
}
好的,这通过使假货始终与真货相等来保护假货。但是如何保护真实的呢?我可以使用随机指针来获得真正的价值吗?如果是,我该怎么办?