回答編集履歴
2
最後の一文追加
test
CHANGED
@@ -51,3 +51,9 @@
|
|
51
51
|
詳しくは下記URLを参考にしてみてください
|
52
52
|
|
53
53
|
http://ufcpp.net/study/csharp/sp_params.html
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
因みになんで `'\n'` という簡単な指定を使わず `"\n"[0]` といった遠回しな使い方をするかは**わかりません**
|
58
|
+
|
59
|
+
(C++メインで使ってた人が書いたコードなのかな??)
|
1
説明補足
test
CHANGED
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
|
14
14
|
|
15
|
-
次に何故`"\n"`はダメで`'\n' or "\n"[0]`がOKなのかと言いますと、
|
15
|
+
次に何故引数に`"\n"`はダメで`'\n' or "\n"[0]`がOKなのかと言いますと、
|
16
16
|
|
17
17
|
Split関数は第1引数に`string型`の配列か`char型`の配列に加え
|
18
18
|
|
@@ -24,27 +24,27 @@
|
|
24
24
|
|
25
25
|
`Split('a', 'b', 'c')`みたいに指定することができ、
|
26
26
|
|
27
|
-
内部的には `Split(new char[] { 'a', 'b', 'c' })` と
|
27
|
+
内部的には `Split(new char[] { 'a', 'b', 'c' })` と変換してくれるような感覚です。
|
28
28
|
|
29
29
|
そしてこの可変長引数はいくつでも指定できる≒引数の数が一つでもOKということです。
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
-
それを踏まえるとこちらの指定は
|
33
|
+
それらを踏まえるとこちらの指定は
|
34
34
|
|
35
35
|
`Split("\n"[0]);`
|
36
36
|
|
37
37
|
|
38
38
|
|
39
|
+
このような指定の意味になり(`string`の最初の要素にアクセスして`char`取得)
|
40
|
+
|
39
41
|
`Split('\n')`
|
40
|
-
|
41
|
-
このような指定の意味になり(stringの最初の要素にアクセスしてchar取得)
|
42
42
|
|
43
43
|
|
44
44
|
|
45
|
+
最終的にこの様な意味になります。(可変長引数から要素が一つの`char`型配列作成)
|
46
|
+
|
45
47
|
`Split(new char[] { '\n' })`
|
46
|
-
|
47
|
-
最終的にこの様な意味になります。(可変長引数から配列作成)
|
48
48
|
|
49
49
|
|
50
50
|
|