ex_friendfunc.cpp

来自「郑阿齐VC教材」· C++ 代码 · 共 35 行

CPP
35
字号
#include <iostream.h>
class CPoint
{
public:
	CPoint() 
	{ 
		m_x = m_y = 0;  
	}
	CPoint( unsigned x, unsigned y ) 	
	{ 	
		m_x = x; 		m_y = y; 	
	}        
	void  Print() 	
	{ 
		cout << "Point(" << m_x << ", " << m_y << ")"<< endl; 	
	}    
	friend  CPoint  Inflate(CPoint &pt, int nOffset); 	// 声明一个友元函数
private:    
	unsigned 	 m_x,  m_y;
};
CPoint Inflate ( CPoint &pt, int nOffset ) 		// 友元函数的定义 
{
	CPoint ptTemp = pt;    
	ptTemp.m_x += nOffset;    			// 直接改变私有数据成员m_x和m_y 
	ptTemp.m_y += nOffset;    
	return ptTemp;
}
void main()
{    
	CPoint pt( 10, 20 );    
	pt.Print();
	pt = Inflate(pt, 3);     				// 调用友元函数
	pt.Print();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?