ブログ 2021/12/17 【近々警告追加】小文字 a~z 型名 型名のコードスタイル C# も最近はコードスタイル的なものに対するおせっかいをするようになってきました。 そのうちの1つが「型名は小文字始まりやめろ」。 現在はこれが Suggestion レベルのメッセージ(警告ほど深刻ではないものの、Visual Studio 上で常に下線が表示されて結構「直せ」圧強め)になります。 まあ、このスタイルに違反する人はそんなにいないんじゃないかと思います。 C# の型名と言えば大体大文字始まりの UpperCamelCase。 類縁なプログラミ… 続きを読む 2021/12/16 【C# 11 候補】 {} 中の改行 今日は「実は Visual Studio 17.1 Preview 1 (先月) の時点で既に入ってた」という機能の話。 C# 11 で、$"{ここ}" みたいな「補完穴」(interpolation hole: 補完文字列の {} の中)の改行に関する仕様がちょっと変わります。 文字列リテラル中の改行 C# の文字列リテラルは、@ を付けると逐語的(\ を使ったエスケープをしなくなる)になって、その中には改行を直接入れることができます。 // @ を付けると文字… 続きを読む 2021/12/08 ベンゼン環の文字コード: ⌬ (U+232C), ⏣ (U+23E3) ベンゼン環が髪についてる子の Twitter 凍結※が解けた記念。 というわけではないんですけども、C# 配信でたびたびネタにしてる Unicode のベンゼン環記号の話。 (※ 開始10分で Twitter 凍結。ものの数分で数万単位でフォロワーが増えるとか言う不自然な動きが何の不正もなく達成されてしまうのが大手企業勢 VTuber の恐ろしいところ…) ベンゼン環文字コード なぜか Unicode にはベンゼン環に文字コードが割当たっています。 ⌬ (U+232C) ⏣ (U… 続きを読む 2021/12/07 【C# 10.0 関連】引数なしコンストラクターの Activator バグ そういえばライブ配信(8月)とか Twitter では話しているものの、ちゃんとこのサイト内には書いていなかったなと言う話。 C# 10.0 で構造体の引数なしコンストラクターが書けるようになりました。 struct A { public int X; public A() => X = 1; // ←要はこういうの } 今年2月にブログで書いてるんですが、これ、C# 6.0 の時に一度採用しようとしたものの、Activator.CreateInstance… 続きを読む 2021/12/04 Regional Indicator (国旗絵文字) 今日は10/31 にやった配信で出てた国旗絵文字の話とか。 絵文字を検索したら別の絵文字が引っかかるというのの原理的な話になります。 元ネタ まず配信中になんで国旗の話が出たか(「先日、国旗絵文字をどうデコードするか問題を見たなぁ」というのの元ネタ)の紹介。 この配信の数日前に、こんなネタがバズっておりまして。 EUC-JP では『海』 (b3 a4) を検索した際に『ここ』(a4 b3 a4 b3) にマッチしてしまう UTF-8は自己同期になるように考えられているし、UT… 続きを読む 新しい投稿へ 過去の投稿へ
2021/12/17 【近々警告追加】小文字 a~z 型名 型名のコードスタイル C# も最近はコードスタイル的なものに対するおせっかいをするようになってきました。 そのうちの1つが「型名は小文字始まりやめろ」。 現在はこれが Suggestion レベルのメッセージ(警告ほど深刻ではないものの、Visual Studio 上で常に下線が表示されて結構「直せ」圧強め)になります。 まあ、このスタイルに違反する人はそんなにいないんじゃないかと思います。 C# の型名と言えば大体大文字始まりの UpperCamelCase。 類縁なプログラミ… 続きを読む
2021/12/16 【C# 11 候補】 {} 中の改行 今日は「実は Visual Studio 17.1 Preview 1 (先月) の時点で既に入ってた」という機能の話。 C# 11 で、$"{ここ}" みたいな「補完穴」(interpolation hole: 補完文字列の {} の中)の改行に関する仕様がちょっと変わります。 文字列リテラル中の改行 C# の文字列リテラルは、@ を付けると逐語的(\ を使ったエスケープをしなくなる)になって、その中には改行を直接入れることができます。 // @ を付けると文字… 続きを読む
2021/12/08 ベンゼン環の文字コード: ⌬ (U+232C), ⏣ (U+23E3) ベンゼン環が髪についてる子の Twitter 凍結※が解けた記念。 というわけではないんですけども、C# 配信でたびたびネタにしてる Unicode のベンゼン環記号の話。 (※ 開始10分で Twitter 凍結。ものの数分で数万単位でフォロワーが増えるとか言う不自然な動きが何の不正もなく達成されてしまうのが大手企業勢 VTuber の恐ろしいところ…) ベンゼン環文字コード なぜか Unicode にはベンゼン環に文字コードが割当たっています。 ⌬ (U+232C) ⏣ (U… 続きを読む
2021/12/07 【C# 10.0 関連】引数なしコンストラクターの Activator バグ そういえばライブ配信(8月)とか Twitter では話しているものの、ちゃんとこのサイト内には書いていなかったなと言う話。 C# 10.0 で構造体の引数なしコンストラクターが書けるようになりました。 struct A { public int X; public A() => X = 1; // ←要はこういうの } 今年2月にブログで書いてるんですが、これ、C# 6.0 の時に一度採用しようとしたものの、Activator.CreateInstance… 続きを読む
2021/12/04 Regional Indicator (国旗絵文字) 今日は10/31 にやった配信で出てた国旗絵文字の話とか。 絵文字を検索したら別の絵文字が引っかかるというのの原理的な話になります。 元ネタ まず配信中になんで国旗の話が出たか(「先日、国旗絵文字をどうデコードするか問題を見たなぁ」というのの元ネタ)の紹介。 この配信の数日前に、こんなネタがバズっておりまして。 EUC-JP では『海』 (b3 a4) を検索した際に『ここ』(a4 b3 a4 b3) にマッチしてしまう UTF-8は自己同期になるように考えられているし、UT… 続きを読む