回答編集履歴

1

加筆

2022/07/22 00:00

投稿

episteme
episteme

スコア16614

test CHANGED
@@ -3,3 +3,27 @@
3
3
  「特定のクラスにのみprivate/protectedへのアクセスを許したい」
4
4
  なら friend が使えます。
5
5
 
6
+ ```C++
7
+ #include <iostream>
8
+
9
+ class A {
10
+ friend class B;
11
+ protected:
12
+ void call() { std::cout << "A::call()\n"; }
13
+ };
14
+
15
+ class B {
16
+ public:
17
+ void funcB() { call(); } // <- ok
18
+ void funcA(A a) { a.call(); }
19
+ private:
20
+ void call() { std::cout << "B::call()\n"; }
21
+ };
22
+
23
+ int main() {
24
+ A a; B b;
25
+ b.funcA(a);
26
+ b.funcB();
27
+ }
28
+ ```
29
+