Почему в данном случае целое число преобразуется в строку?

Что происходит ниже?

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

public class DotNetPad
{
    public static void Main(string[] args)
    {
        int i = 10;
        string k = "Test";
        Console.WriteLine(i+k);
        Console.WriteLine(k+i);
    }
}

iпреобразуется в строку в обоих случаях. Я запутался с идеей приоритета оператора (, хотя этот пример не показывает многое из этого )и направления вычисления. Иногда оценка происходит слева -до -справа или наоборот. Я точно не знаком с наукой о том, как вычисляется выражение...

Почему iпреобразуется в строку в приведенном выше примере и на самом деле не дает ошибки компиляции?

9
задан Peter Mortensen 2 May 2012 в 18:05
поделиться