作者:333 | 来源:互联网 | 2023-05-17 18:51
struct foo {
int a;
int b;
};
struct foo f1, f2;
用f1==f2判断会怎么执行?
13 个解决方案
你发在的是c语言版,要是c的话没办法直接用==,c++的话重载operator==可以
bool operator==(foo &t1,foo &t2)
{
return (t1.a==t2.a)&&(t1.b==t2.b);
}
C语言不能重载==的。
不可以。
可以尝试:memcmp
不过,如果有char*的话,就不行了。
这个还真不知道~~~没试过~~~呵呵,但是在C++自定义类要想比较大小不是先得重载关系操作符吗???
我先用机器测试一下,看看行不行~~
期待高手的回答~~~~
c中==只能是基本的数据类型,就是长度不超过寄存器的
编译不过
如果是C++的话可以对结构体的==运算符进行重载
在重载函数中分别对2个数据成员进行比较
不执行。。。。。。。。。。。。。。。。。。。。。。
想问下,void cPoi::setSearchCondition(SEARCHCONDITION stCon){
mCondition = stCon;
},SEARCHCONDITION 是个结构体,在程序中没有写重载函数,这样运行不会出错,难道Windows自己写了重载