本文是學習慕課網c++遠征之模板類.
友元函式分為友元全域性函式和友元成員函式:
友元全域性函式:將函式定義在全域性,並在類中宣告為友元
友元成員函式:將函式定義在類當中,並把函式宣告為另外乙個類的友元函式
兩個都可以直接訪問類的私有成員
(1)友元全域性函式
先來看一段**
#include
using
namespace
std;
class coordinate //定義乙個類:座標
; void printxy(coordinate &c)//友元函式定義不需要加類名
coordinate::coordinate(int x,int y)
int main(void)
(2)友元成員函式
#include
using
namespace
std;
class coordinate;
class circle
;//定義乙個類:座標
class coordinate
; int main(void)
void circle::printxy(coordinate &c)
好了,這裡是簡單了解了定義,下次我會更詳細地學習友元函式的編碼實現。 C 之友元函式
類的友元.cpp 定義控制台應用程式的入口點。include stdafx.h include include using namespace std class point 預設賦值建構函式,在建立物件時自動呼叫 int getx 隱藏有this指標,指向當前使用的物件,其實是return thi...
C 之友元函式
1 為什麼要引入友元函式 在實現類之間資料共享時,減少系統開銷,提高效率 具體來說 為了使其他類的成員函式直接訪問該類的私有變數 即 允許外面的類或函式去訪問類的私有變數和保護變數,從而使兩個類共享同一函式 優點 能夠提高效率,表達簡單 清晰 缺點 友元函式破環了封裝機制,盡量不使用成員函式,除非不...
c 學習之 友元
1.為什麼要用友元及其缺點 2.友元函式 3.友元類一 為什麼要用友元和其缺點?採用類的機制後實現了資料的隱藏與封裝,類的資料成員一般定義為私有成員,成員函式一般定義為公有的,依此提供類與外界間的通訊介面。有時候,其他類或者函式要訪問該類的非公有成員,可以令其他類或者函式成為它的友元 friend ...