CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

类对象的引用,做另一个类成员函数的参数,问题在哪?

楼主winterss(wendy)2006-03-03 16:41:26 在 C/C++ / C++ 语言 提问

有两个类A,B  
  class   A  
  {  
  void   functionsA(参数xxx)  
  {  
    //   调用B对象的functionsB  
  }  
  };  
   
  class   B  
  {  
  void   functionsB()  
  {  
  }  
  }  
  A.h文件里是:  
  #include   "B.h"  
  void   functionA(const   B   &);  
   
  A.cpp文件里是:  
  void   A::functionA(const   B   &   b)      
  {  
  //调用   b.functionB()  
  }  
  现在只有最后一个错误,到底怎么哪错了呢?  
  syntax   error   :   missing','befor'&'  
  syntax   error:'&'  
  (前两个问题针对这一句void   functionA(const   B   &);)  
  functionA:overloaded   member   function   'void   (const   class   B   &)'   not   found   in   'A'  
  问题点数:30、回复次数:4Top

1 楼piaochen_2002(执子之手,与子偕老!)回复于 2006-03-03 16:46:59 得分 10

class   B  
  {  
   
  public   :  
  void   functionB()  
  {  
  }  
  };  
   
  class   A  
  {  
        void   functionA(   B     &   b)   ;  
  };  
   
   
  void   A::functionA(   B     &   b)      
  {  
      b.functionB();  
  }  
  Top

2 楼oosky2004(我要好东西)回复于 2006-03-03 17:16:29 得分 10

A.h文件里  
  #include   "B.h"  
   
  class   B;   //加这句看看。  
   
  void   functionA(const   B   &);Top

3 楼qybao(阿宝)回复于 2006-03-03 17:24:39 得分 0

have   a   try  
  class   B  
  {  
  void   functionsB()   const   //  
  {  
  }  
  }  
  Top

4 楼zhNKUjw(淡淡的云彩悠悠的游)回复于 2006-03-03 18:56:31 得分 10

qybao(阿宝)正解。  
  void   A::functionA(const   B   &   b)     传递的参数是一个B类常量的引用,所以要求不能对b的右值进行操作,即不能改变b中类变量的值。该函数中调用了B类的成员函数functionB(),要将其声明为const  
   
   
   
  #include<iostream>  
  using   namespace   std;  
   
  class   B  
  {  
  public:  
  void   functionsB()     const  
  {  
  cout   <<   "B"   <<   endl;  
  }  
  };  
   
  class   A  
  {  
  public:  
  void   functionsA(const   B&   b)  
  {  
    //   调用B对象的functionsB  
  b.functionsB();  
  }  
  };  
   
  void   main()  
  {  
  A   a;  
  B   b;  
  a.functionsA(   b   );  
  }Top

相关问题

  • (一个很弱的问题)有关于成员函数的引用参数
  • 问题:常引用对象作函数参数为何可操作对象的私有成员
  • 如何使用类的成员函数做为函数参数?
  • 关于函数参数是引用的一个问题
  • 函数引用传递参数具体是如何实现的?
  • getRef引用一个带参数得动态函数?
  • vc++中的引用参数,引用函数具体有哪些作用?
  • 友元函数的参数为什么要用该类的引用作参数?
  • 请问C里面函数参数中是不是不能用引用参数
  • (简单问题:10分)如何在一个成员函数中,让一个“struct体的引用”做为参数呢? 我写了一个类的成员函数(使用右键菜单自动生成),这

关键词

  • 函数
  • 文件
  • functiona
  • functionb
  • functionsb
  • 参数
  • 调用
  • const
  • include

得分解答快速导航

  • 帖主:winterss
  • piaochen_2002
  • oosky2004
  • zhNKUjw

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo