首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

好像对友元函数理解有有关问题!各位帮忙看看

2012-04-04 
好像对友元函数理解有问题!各位帮忙看看#ifndefTIME_H_#defineTIME_H_#includeiostreamclassCTime{prote

好像对友元函数理解有问题!各位帮忙看看
#ifndef   TIME_H_

#define   TIME_H_
#include   <iostream>

class   CTime
{
protected:
int   m_iHour;
int   m_iMin;
int   m_iSec;

public:
CTime(int   hour   =   0,   int   minute   =   0,   int   second   =   0);
friend   CTime   operator   +(CTime   &time1,   CTime   time2);
friend   CTime   operator   -(CTime   &time1,   CTime   time2);
friend   std::ostream   &operator   < <(std::ostream   &os,   CTime   &time);
friend   std::istream   &operator   > > (std::istream   &is,   CTime   &time);
};

#endif


std::istream   &operator   < <(std::istream   &is,   CTime   &time)
{
std::cout   < <   "Enter   time <h:m:s> :   ";
is   > >   time.m_iHour   > >   ": "   > >   time.m_iMin   > >   ": "   > >   time.m_iSec;

return   is;
}
函数这么写为什么报错?
error   C2248:   'm_iMin '   :   cannot   access   protected   member   declared   in   class   'CTime '真的晕了!难道是不可写?

[解决办法]
std::istream &operator < <(std::istream &is, CTime &time)
应该是:
std::istream &operator > > (std::istream &is, CTime &time);

热点排行