gpt4 book ai didi

c++ - C++中结构的按位异或

转载 作者:行者123 更新时间:2023-11-27 23:22:57 25 4
gpt4 key购买 nike

我想做的是在 C++ 中对同一结构的两个变量进行按位异或,即

    D[i] ^= D[j];

其中 D 是一个数组,包含字符串、整数、....

但是,编译器会报错(这里使用整数数组作为索引,意思是 D[dInd[u]]^=...):

Description Resource    Path    Location    Type
no match for ‘operator^=’ in ‘*(D + ((long unsigned int)(((long unsigned int)
(*(dInd + ((long unsigned int)(((long unsigned int)u) * 4ul))))) * 2808ul)))
^= *(D + ((long unsigned int)(((long unsigned int)(*(dInd + ((long unsigned
int)(((long unsigned int)i) * 4ul))))) * 2808ul)))’

有谁知道我可以如何更正此行以实现按位异或?

非常感谢任何提示。提前致谢,干杯- 亚历克斯

最佳答案

重载结构中的成员:

struct X
{
X& operator ^= (const X& other)
{
//...
return *this;
}
};

关于c++ - C++中结构的按位异或,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11519867/

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