标题:错误在哪里,求大神指教
只看楼主
爱学习ing
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2014-3-20
结帖率:100%
已结贴  问题点数:20 回复次数:4 
错误在哪里,求大神指教

建立名为Point的点类,该类有两个私有成员变量x和y,还有一个用来表示当前点对象总数的静态私有成员。定义一个用于输出点总数的成员函数;一个友元函数,该函数的参数为点类的对象,通过该函数能够输出点的两个私有数据成员x和y。
创建若干个对象,然后显示他们的数据成员以及当前点的总数。
#include<iostream.h>
class point
{
    int x,y;
    static int number;
public:
    friend void display(point a);
    void init(int m,int n)
    {
        x=m;
        y=n;
    }
    static void show()
    {
        number=number++;
        cout<<"number="<<number<<endl;
    }
   
};
void display(point a)
{
    cout<<"x="<<a.x<<endl;
    cout<<"y="<<a.y<<endl;
}
int point::number=0;
void main()
{
    point p;
    p.init(1,2);
    p.show();
    p.display();
   
}

若把display换成show就可以运行,求大神讲述原因(输出点总数的数据成员必须和友元函数名一样吗?)谢谢帮助!!!!!!
搜索更多相关主题的帖子: display include public number friend 
2014-04-14 08:25
爱学习ing
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2014-3-20
得分:0 
输出点总数的数据成员函数为什么要和友元函数一样啊啊啊,谢谢大神指教
2014-04-14 08:27
爱学习ing
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2014-3-20
得分:0 
#include<iostream.h>
class point
{
    int x,y;
    static int number;
public:
    friend void show(point a);
    point(int m,int n)
    {
        x=m;
        y=n;
    }
    static void display()
    {
        number=number++;
        cout<<"number="<<number<<endl;
    }

   
};
void show(point a)
{
    cout<<"x="<<a.x<<endl;
    cout<<"y="<<a.y<<endl;
}
int point::number=0;
void main()
{
    point p(1,2);
    show(p);
    p.display();
   
}
我找到错误了,是主函数调用出错了,
2014-04-14 08:58
hubinyes
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:104
专家分:557
注 册:2014-2-4
得分:10 
2014-04-14 15:46
骚年来一发
Rank: 2
等 级:论坛游民
威 望:1
帖 子:8
专家分:71
注 册:2014-3-28
得分:10 
2014-04-18 16:48



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-430059-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.226997 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved