1樓:網友
友元只是說你可以訪問乙個類的私有資料部分,是說要訪問類a的kj()方法,而類a在語言解析時候(用來標識乙個類)並不會把友元類的方法資訊也加到本類中儲存,也就是說類a中並沒有kj()這個方法。
2樓:網友
友元是單向傳遞,也就是說你定義了a是b類的友元函式,b可以訪問a類中的東西,但是反過來是不可以的。《記得友元是單向傳遞就ok了!》
類a是類b的友元,類b是類c的友元,那麼 類a是類c的友元?
3樓:塞北明豬
友元的關係是不能傳遞的,所以類a不是類c的友元。
7. 類a是類b的友元,類b是類c的友元,則( )是正確的.
4樓:網友
是的 友元不能傳遞吧,只對宣告的那個有效。
5樓:愛戀雪
友元的關係式不可傳遞的!
c++? 程式執行過程?友元問題?怎麼理解?
6樓:網友
這有什麼不好理解的,你把friend去掉試試,看看出什麼問題~友元是為方便物件訪問私有成員設定的,物件訪問私有資料成員只能通過公有函式來訪問,但是在友元函式中可以使用 物件。資料成員 的方式訪問私有資料成員~
對於友元類,如果乙個類是另乙個類的友元類,則則個類的所有函式是另乙個類的友元函式~ 這在類的巢狀中訪問資料成員很方便。
友元破壞類的封裝性~
好好看看課本,體會體會~
要是類的話 最好使用 class 而不要使用 struct~
7樓:夜的武者
謝謝 我也遇到這種問題~~~
對引用和友元的理解
8樓:網友
引用就是某一變數(目標)的乙個別名,對引用的操作與對變數直接操作完全一樣。
友元函式的特點是能夠訪問類中的私有成員的非成員函式。友元函式從語法上看,它與普通函式一樣,即在定義上和呼叫上與普通函式一樣。
9樓:網友
引用是一種特殊的資料型別,定義引用型別變數,實質上是給乙個已定義的變數起乙個別名,系統不為引用型別變數分配記憶體空間。它可以針對任意的變數,不僅侷限於類的物件。比如:
int a=5;
int %b=a;
則a和b在記憶體中佔用的是同乙個空間,對a和對b的操作本質上是一樣的。
友元主要用在類中,定義友元函式後,這個函式可以訪問類中的所有成員。它不同與類中的其它函式,類中的其它函式是作為類的成員函式的,而它不作為類的成員函式,對它指定訪問許可權是無效的。說白了,它與類之間僅存在訪問許可權問題,其使用方法同普通函式一樣,只是它比普通函式多了乙個可以任意訪問指定類中的任意成員的許可權而已。
c++友元函式問題,高手進
10樓:
如果申明瞭友員則不應該出現這樣的問題,如:
class student
應該不會出現name是私有成員不能訪問的錯誤!
11樓:網友
無法訪問。。student類的私有成員。。。name
更改一下。。。name修改一下屬性。。就可以了。
b類是a類的友元,c類是b類的繼承,那麼c類是a類的友元嗎?
12樓:網友
不是,友元不支援繼承。
13樓:網友
不是 友元沒有繼承性和反身性。
不能將友元說明為虛擬函式,但虛擬函式可以是另乙個類的友元。 這句話怎麼理解?有**更好,謝謝!
14樓:網友
因為在乙個類裡宣告友元時 由於友元不是自己的成員函式 自然在自己的類裡不能把它宣告為虛擬函式。
但是在友元本身可以是虛擬函式。
注意 友元是另外乙個類的成員函式(在那個類裡 它可以定義為虛擬函式)這個類將它宣告為自己的友元,只是讓它可以存取自己的私有變數。
c++:在多檔案程式結構,友元函式如何宣告的問題??但有乙個友元函式一直不知道怎樣處理?具體如下:
15樓:網友
我這裡能夠正常編譯,你把全部**放到。
以後再把生成的位址補充到問題裡面吧。
c 的友元函式問題,C 友原函式求教
這據說是vc的一個經典bug。和namespace也有關。只要含有using namespace std 就會提示友員函式沒有訪問私有成員的許可權。解決方法 去掉using namespace std 換成更小的名字空間。例如 含有 include 就要加上using std string 含有 i...
為什麼女人這麼難以理解
人們常說,女人的心思難以琢磨。把女人善變 女人的心比喻成,象是沉在海底的針,猜不透,摸不著 不知道你怎麼理解 女人心海底針 在我看來不論是敏感 難以捉摸 是善變也罷。用在全世界的 身上,那我到是想說女人為什麼會海底針呢,那都是男生惹的!其實,女人的心事很簡單,是心有摯愛卻深邃得不見波瀾,要的只是尋花...
C 中類的成員函式作為另類的友元函式的問題,問題在下面的中,希望解釋的詳細點,謝謝了
student不是一個類名嗎?怎麼成形參的引數型別了 類也是一個型別啊 當然可以做為一個函式的形參型別啦 這裡的c是student的物件吧,用在這裡的意思是要呼叫score吧?嗯,為了讓teacher物件呼叫student物件的私有成員 這個wc是student的物件,怎麼不能用c 為什麼要用wc ...