C++ 类的深入探究:返回私有成员引用、默认赋值与对象组合
1. 返回私有数据成员的引用或指针
在编程中,返回私有数据成员的引用或指针可能会带来一些潜在的问题。一个对象的引用可以作为该对象名称的别名,可用于赋值语句的左侧。若类的公共成员函数返回其私有数据成员的引用,可能会破坏类的封装性。
以下是一个简化的 Time 类示例:
// Fig. 17.10: Time.h
// Time class declaration.
// Member functions defined in Time.cpp
// prevent multiple inclusions of header
#ifndef TIME_H
#define TIME_H
class Time
{
public:
explicit Time( int = 0, int = 0, int = 0 );
void setTime( int, int, int );
unsigned int getHour() const;
unsigned int &badSetHour( int ); // dangerous reference return
private:
unsigned int hour;
unsigned int minute;
unsigned int second;
}; // end class Time
#endif
// Fig. 17.11: Time.
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



