回答編集履歴

2

最後の一文追加

2017/09/04 11:30

投稿

MMashiro
MMashiro

スコア2378

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

説明補足

2017/09/04 11:30

投稿

MMashiro
MMashiro

スコア2378

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