回答編集履歴

1

修正

2024/07/26 08:24

投稿

fiveHundred
fiveHundred

スコア10070

test CHANGED
@@ -6,3 +6,31 @@
6
6
  「毎回定義するのが面倒だから、同じ名前のメンバー変数を定義して使いまわす」という考えであればなおさら駄目です(超有名なアンチパターンです)。
7
7
 
8
8
  「複数の関数で呼び出す」なら「あり」かもしれませんが、「その変数を用意しないと実行できない」という依存関係が生まれてしまうので、よく考える必要があります。
9
+
10
+ ---
11
+
12
+ すみません、これ「メンバー変数を関数内で呼び出す」と勘違いしていました。
13
+ あまりにもコードが悪いので勘違いしました。
14
+
15
+ ```C#
16
+ d = kansuu2(a);
17
+ ```
18
+
19
+ と言う具合に、関数kansuu2に変数aを引数にするぐらいであれば、特に問題はありません。
20
+ しかし、
21
+
22
+ ```C#
23
+ int a; // ①
24
+
25
+ private int kansuu2(int a) //②
26
+ {
27
+ c = a; // ③
28
+ return c;
29
+ }
30
+ ```
31
+
32
+ この①と②は同じ名前ですが、別のものとして扱われます。
33
+ 例えば③では、②が使われます。①ではありません。
34
+
35
+ このように、同じの名前でも別のものが存在することがあります。
36
+ 蛇足にはなりますが「関数内でしか使わないのであれば、関数内で定義する」と言った理由は、これに対する問題を避けるためです。