关于struct定义构造函数的问题
struct Elem{int k,num;
Elem (int _k,int _num){k=_k,num=_num;}
}Queue;
error: no matching function for call to 'Elem::Elem()'|
为什么这个会报错呢?我的传参没问题啊 struct Elem{
int k,num;
Elem (int _k,int _num){k=_k,num=_num;} // Elem 不是结构体名称而已吗?怎么变函数了?
}Queue; claws0n 发表于 2018-8-23 11:08
struct Elem{
int k,num;
Elem (int _k,int _num){k=_k,num=_num;} // Elem 不是结构体名称而已 ...
这是C++ 因为当你Elem xxx的时候会调用Elem::Elem(),这个函数的无参数重载版本没定义,所以会报找不到重载版本。 无符号整形 发表于 2018-8-23 11:11
因为当你Elem xxx的时候会调用Elem::Elem(),这个函数的无参数重载版本没定义,所以会报找不到重载版本。
这样啊,我明白了,谢谢了
页:
[1]