| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1110 人关注过本帖
标题:这个怎么错了 我刚刚学到类~
只看楼主 加入收藏
asd6791868
Rank: 1
来 自:逆流
等 级:新手上路
帖 子:362
专家分:7
注 册:2008-7-27
结帖率:88.24%
收藏
 问题点数:0 回复次数:11 
这个怎么错了 我刚刚学到类~
首先谢谢各位大虾百忙之中来找错!~

#include "iostream"

using namespace std;

class print{

public:

    void setp(int);
  
    void p();

private:
 
    int a;
};


void print::setp(int w)
{   
    a=w;
}

void print::p()
{
    cout<<"hello my c++"<<endl;
}

void main()
{  
    
    print b;
    
    b.setp(33);
    
    cout<<b<<endl;
    
    b.print();
    

}
搜索更多相关主题的帖子: void private include public 
2008-10-28 20:25
youhm
Rank: 1
等 级:新手上路
帖 子:86
专家分:0
注 册:2006-5-25
收藏
得分:0 
cout<<b<<endl;
这个对象不能直接输出吧

b.print();
这个对象没有print成员,应是b.p();吧
2008-10-28 20:37
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
要重载<<为类的友员
friend ostream& operator<<(ostream& out,print& k)
{
  return out<<k.a<<endl;
}
2008-10-28 20:54
lpf11230108
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2008-6-17
收藏
得分:0 
cout<<b<<endl;
你是想输出对象b中的a吗
2008-10-28 20:59
asd6791868
Rank: 1
来 自:逆流
等 级:新手上路
帖 子:362
专家分:7
注 册:2008-7-27
收藏
得分:0 
只要这个程序能正常运行就行。。。
我想看看我 自己理解的 于正确的有什么不同、。。。

─條路 :  ┈片天  ┈個人  ─瞬間:
2008-10-28 21:03
tls411323
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2008-10-26
收藏
得分:0 
fkjfk
可以加入构造函数利用构造函数给a进行初始化
2008-10-28 22:45
牧人
Rank: 1
等 级:新手上路
帖 子:126
专家分:0
注 册:2008-10-22
收藏
得分:0 
不懂
2008-10-28 23:02
asd6791868
Rank: 1
来 自:逆流
等 级:新手上路
帖 子:362
专家分:7
注 册:2008-7-27
收藏
得分:0 
还是没人告诉我 哪出错了???

─條路 :  ┈片天  ┈個人  ─瞬間:
2008-10-29 08:28
newyj
Rank: 2
等 级:新手上路
威 望:3
帖 子:542
专家分:0
注 册:2008-1-4
收藏
得分:0 
首先 不能输出一个类对象 cout<<b<<endl
所以要 重载<<运算符
还有b.print();改成b.p();

程序代码:
#include <iostream>
using namespace std;

class print{

public:

    void setp(int);
  
    void p();
    friend ostream& operator<<(ostream& out,print& k)
    {
       return out<<k.a<<endl;
    }

private:

    int a;
};


void print::setp(int w)
{   
    a=w;
}

void print::p()
{
    cout<<"hello my c++"<<endl;
}

int main()
{  
    
    print b;
    
    b.setp(33);
    
    cout<<b<<endl;
    
    b.p();
    return 0;

}
2008-10-29 12:34
shmilytong
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2008-10-31
收藏
得分:0 
cout<<b<<endl;错在这一句
2008-10-31 13:09
快速回复:这个怎么错了 我刚刚学到类~
数据加载中...
 
   



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

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