chapter 12(additional) 类的私有成员输出
2013-09-04 20:18
183 查看
eg:
class sales_item
{
public:
sales_item():units_sold(0),revenue(0.0) {}
//其他函数。。。
private:
string isbn;
unsigned units_sold;
int revenue;
}
若想在屏幕上显示该类中的私有成员,直接在类外使用cout<<obj.isbn<<" "<<obj.units_sold<<endl;命令会出现编译错误,因为类的私有成员不能直接访问。要输出私有成员需要定义一个成员函数:
在类中添加公有成员函数void display() const;或者 void display(ostream& os) const;其定义如下:
void sales_item::display() const
{
cout<<isbn<<" "<<units_sold<<endl;
}
或者
void sales_item::display(ostream &os) const
{
os<<isbn<<" "<<units_sold<<endl;
}
然后直接调用该函数即可:
obj.display (); //or obj.display(cout);
class sales_item
{
public:
sales_item():units_sold(0),revenue(0.0) {}
//其他函数。。。
private:
string isbn;
unsigned units_sold;
int revenue;
}
若想在屏幕上显示该类中的私有成员,直接在类外使用cout<<obj.isbn<<" "<<obj.units_sold<<endl;命令会出现编译错误,因为类的私有成员不能直接访问。要输出私有成员需要定义一个成员函数:
在类中添加公有成员函数void display() const;或者 void display(ostream& os) const;其定义如下:
void sales_item::display() const
{
cout<<isbn<<" "<<units_sold<<endl;
}
或者
void sales_item::display(ostream &os) const
{
os<<isbn<<" "<<units_sold<<endl;
}
然后直接调用该函数即可:
obj.display (); //or obj.display(cout);
相关文章推荐
- 《第十周任务二》定义CPerson的类,设置私有成员:姓名,身份证号等;成员函数:构造函数,析构函数,输出信息的函数。
- 2,改写本章例2.1程序,要求: (1)将数据成员改为私有; (2)将输入和输出的功能改为由成员函数实现; (3)在类体内定义成员函数;
- 第十周任务二 定义一个名为CPerson的类,有以下私有成员:姓名、身份证号、性别和年龄,成员函数:构造函数、析构函数、输出信息的函数。
- 定义一个圆类(Circle),私有数据成员为半径(radius)、圆周长和面积,共有成员函数为输入半径;计算周长、面积;输出半径、周长和面积。要求定义构造函数(以半径为参数,缺省值为0,周长和面积在
- C++第十周【任务2】定义一个名为CPerson的类,有以下私有成员:姓名、身份证号、性别和年龄,成员函数:构造函数、析构函数、输出信息的函数。
- 拷贝构造函数的一个对象访问私有成员的问题
- java 使用反射机制来获取私有方法和成员变量
- 在类外成员函数中进行输入排序和输出
- 类访问自身的私有成员
- C#反射:让私有成员无所遁形
- C++类外直接访问私有成员
- 设计一个时间类Time,要求: (1)包含时(hour)、分(minute)和秒(second)私有数据成员。 (2)包含构造函数,重载关于一时间加上另一时间的加法运算符+、重载关于一时间减去另一时间
- 《C++ Template》Chapter 12 Complete
- 对私有继承成员的公有化
- 访问对象私有成员方式的比较
- 12:字符串逆向输出
- C++私有成员和受保护成员的访问权…
- 对象调用私有成员数据问题
- C++ 公有继承、保护继承和私有继承中类成员的访问权限的控制
- Python类中的私有成员(私有函数,私有变量)