注册 登录
编程论坛 C++教室

友元类表示想了很久都弄不懂!!!!

丶浅唱 发布于 2014-08-14 20:00, 645 次点击
#include<iostream.h>
#include<string.h>
class Y;
class X
{
    int x;
    char *strx;
public:
    X(int a,char *str)
    {
        x=a;
        strx=new char[strlen(str)+1];
        strcpy(strx,str);
    }
    void show(Y &ob);

};
class Y
{
    int y;
    char *stry;
public:
    Y(int b,char *str)
    {
        y=b;
        stry=new char[strlen(str)+1];
        strcpy(stry,str);
    }
    friend void X::show(Y &ob);
};
void X::show(Y &ob)
{
    cout<<"the string of X is:"<<strx<<endl;
    cout<<"the string of Y is:"<<ob.stry<<endl;
}
void main()
{
    X a(10,"stringx");
    Y b(10,"stringy");
    a.show(b);
}



今天弄了一天的友元类了,在遇到这个代码  都看不懂! 特别是(Y &ob)中的那个ob是哪里出来的? 这句到底想表达什么东西想不明白  还有最后一句  a.show(b)是怎么去实现的??? 一大堆问题  求大神救救我。。。在这样下去都不想学了。。。。求大神们帮帮我吧 谢谢谢谢!!
5 回复
#2
funyh2502014-08-15 01:05
void show(int &ob)
这个懂吗?
void show(Y &ob)这里的形参只不过换成了类类型

a.show(b)是怎么去实现的
  把函数里的ob换成b就是了

类的知识点确实挺多的,慢慢消化吧
#3
丶浅唱2014-08-15 09:02
回复 2 楼 funyh250
可不可以帮我详细的再讲一下!!  谢谢谢谢。 我自己看确实是看不懂!
#4
funyh2502014-08-15 15:55
回复 3 楼 丶浅唱

  自己先思考,哪里不懂的在提出来

看别人的讲解看一百遍才能真正领会到
而自己独立专研总结一遍就印象深刻
#5
丶浅唱2014-08-15 18:43
回复 4 楼 funyh250
可不可以给我一个你的 QQ或者是微信之类的号码  拜托了
#6
funyh2502014-08-15 20:40

 不好意思本人没什么时间,只是有空来瞧瞧,会的也只是那点皮毛
1