本文介绍了前向引用问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 大家好, 我有这个stange编译器错误。我有一个B类,其中包括指向A类的指针,因此我做了前瞻性的参考: A类;在头文件的开头。 好吧,这样可行,但如果我包括以下 B类{ A * p1; A * p2; B(A * a1,A * a2){p1 = a1; p2 = a2;} bool operator ==(const C2Clique& p)const {return (a1-> getId()== p。 a1-> getId;) } 好的然后我收到一条错误消息,告诉我类型A未定义。我已经意识到这是因为我使用了A的> getId()方法在 中的==在B. 所以我的问题是,由于A依赖于B而反之亦然,我怎么能在这个问题上得到 ? Adam 解决方案 将operator ==的实现放入.cpp文件中。 - Peter MacMillan 电子邮件/ msn: pe***@writeopen.com icq:1-874-927 GCS / IT / L d - ( - )> -pu s():( - )a- C +++(+++ +)与GT; Hi All,I have this stange compiler error. I have a class B that includespointers to class A, therefore I have done forward referencing by doingclass A; at the start of the header file.Ok well that works ok, but if I include the followingclass B {A* p1 ;A* p2 ;B(A* a1, A* a2) {p1 = a1 ; p2 = a2 ;}bool operator==(const C2Clique& p) const { return(a1->getId()==p.a1->getId ;)}Ok then I get an error messaging saying me that type A is undefined. Ihave realised this is because I am using the ->getId() method of A inthe == in B.So my question is that as A relies on B and vice versa how can I getaround this problem?Adam 解决方案Put the implementation of the operator== into the .cpp file.--Peter MacMillane-mail/msn: pe***@writeopen.comicq: 1-874-927GCS/IT/L d-(-)>-pu s():(-) a- C+++(++++)> 这篇关于前向引用问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云! 09-05 10:05