我是新來的C++編程,我們可以聲明一些類的成員作爲其他類的朋友。這意味着讓我們說A類有三個成員函數,而不是聲明整個類作爲其他B類的朋友(比如說)我可以只聲明A類的一個成員作爲B類的朋友,所以請幫助。朋友類聲明
Q
朋友類聲明
0
A
回答
1
是的,你可以聲明一個成員函數作爲另一個類的朋友。
Online Sample:
#include<iostream>
class Myclass;
class Otherclass
{
public:
void doSomething(Myclass &obj);
};
class Myclass
{
int i;
friend void Otherclass::doSomething(Myclass &obj);
};
void Otherclass::doSomething(Myclass &obj)
{
obj.i = 10;
std::cout<<obj.i;
}
int main()
{
Myclass obj;
Otherclass obj2;
obj2.doSomething(obj);
return 0;
}
1
在聲明朋友類時,朋友類的所有成員函數都成爲聲明朋友類的類的朋友。 source
1
-1
2
是:
class A
{
public:
void func_1();
void func_2();
void func_3();
};
class B
{
friend void A::fund_2();
void plop(); // only A::func_2() can call this function
};
相關問題
- 1. 朋友聲明*
- 2. 聲明類模板爲朋友
- 3. 朋友分類中的退貨聲明
- 4. 朋友類聲明和使用指令
- 5. 聲明前向聲明的類的成員函數爲朋友
- 6. 朋友聲明,明確模板實例聲明
- 7. 爲朋友功能使用聲明
- 8. 朋友申報不能向前聲明
- 9. 簡單的朋友聲明C++
- 10. 朋友LinkedQueue <T>;預計聲明
- 11. 聲明一個類模板作爲一個類的朋友
- 12. 轉發類聲明的朋友類不編譯
- 13. 聲明許多功能作爲一個類的朋友
- 14. 如何聲明一個類朋友另一其定義
- 15. 如何解決「聲明朋友時必須使用類」錯誤?
- 16. 沒有類聲明的朋友成員函數
- 17. 類的朋友
- 18. 朋友ref類?
- 19. C++朋友類
- 20. 一個明確的專業化不能成爲朋友聲明
- 21. 一個類的「朋友」是否擴展到該類中聲明的類?
- 22. SQL表爲朋友,共同朋友,朋友朋友等
- 23. 內部結構/類聲明是否自動成爲嵌套類的朋友?
- 24. 如何將封閉類的朋友聲明爲成員模板類?
- 25. 聲明一個可變參數模板類簡單的模板類的朋友
- 26. 在C++中聲明一個類模板作爲類模板的朋友
- 27. 朋友類:繼承類不是朋友嗎?
- 28. 類模板和朋友類
- 29. Facebook朋友的朋友
- 30. 朋友功能減速無法訪問功能聲明
爲什麼這個答案是downvoted?他似乎是對的.... – Kevin