Почему для базового класса необходимо иметь конструктор, который принимает 0 аргументов?

Это не компилируется:

namespace Constructor0Args
{
    class Base
    {
        public Base(int x)
        {
        }
    }

    class Derived : Base
    {
    }

    class Program
    {
        static void Main(string[] args)
        {
        }
    }
}

Вместо этого я получаю следующую ошибку:

'Constructor0Args .Base 'не содержит конструктора, который принимает 0 аргументов

Почему? Обязательно ли для базового класса иметь конструктор, который принимает 0 аргументов?

22
задан Cody Gray 11 February 2011 в 06:35
поделиться