C++ 中友元的用法:
1、在類中使用friend關鍵字聲明
2、類的友元可以是其它類或者具體函數
3、友元不是類的一部分
4、友元不受類中訪問級別的限制
5、友元可以直接訪問具體類中的所有成員。
友元聲明使用格式:
class class_name() { int x; int y; public: friend void func(class_name& p); }; void func(class_name& p) { }
友元關系不具備傳遞性
類的友元可以是其它類的成員函數
類的友元可以是某個完整的類——所有的成員函數都是友元
友元小結:
友元是為了兼容c語言的高效而誕生的。
友元直接破壞了面向對象的封裝性
友元關系不具備傳遞性
類的友元可以是其它類的成員函數
類的友元可以是某個完整的類
類中的函數重載:
1、函數重載的本質是相互獨立的不同函數
2、C++中通過函數名、函數參數確定函數調用
3、無法直接通過函數名獲得重載函數的入口地址
4、函數的重載只能在相同的作用域
函數重載的重要意義:
通過函數名對函數功能進行提示。
通過參數列表對函數用法進行提示
擴展系統中已經存在的函數功能
C++ 操作符重載(operator):
C++中的重載能夠擴展操作符的功能。
操作符的重載以函數的方式進行。
本質:
用特殊形式的函數擴展操作符的功能。
operator關鍵字可以定義特殊的函數,通過函數重載操作符。
class Type
{
Type operator sign (const Type &t, const Type & t2)
{
Type ret;
return ret;
}
}