2 篇文章
用 ILDASM 看三种拼接方式编译后变成了什么:+ 变成 String.Concat,$ 在老编译器里变成 String.Format。再补上 C# 10 以后插值字符串的变化和 StringBuilder 的使用时机。
C# 先编译成 IL,再由 JIT 编译成机器码。把 ILDasm 加进 VS 的外部工具,逐条读懂一个 for 循环的 IL 指令:计算栈、局部变量表、装箱和跳转。