Итак, например, у вас есть тип типа:
public class EffectOptions
{
public EffectOptions ( params object [ ] options ) {}
public EffectOptions ( IEnumerable<object> options ) {}
public EffectOptions ( string name ) {}
public EffectOptions ( object owner ) {}
public EffectOptions ( int count ) {}
public EffectOptions ( Point point ) {}
}
Здесь я просто приведу пример с использованием конструкторов, но результат будет таким же, если бы они были неконструкторскими методами для самого типа, правильно?
Итак, когда вы это сделаете:
EffectOptions options = new EffectOptions (null);
какой конструктор будет вызываться, и почему?
Я мог бы проверить это сам, но я хочу понять, как работает система разрешения перегрузки (не уверен, что то, что она называла).