Konstruktorüberladung mit Standardparametern

Ich habe versehentlich einen Konstruktor in C # wie folgt überladen:

public MyClass(string myString) 
{
    // Some code goes here 
}

public MyClass(string myString, bool myParameter = false) 
{
   // Some different code here
}

Mit diesem Code ist mein Projekt gut kompiliert. Wenn ich den Konstruktor mit nur a aufrufestring Argument, wie entscheidet C #, welchen Konstruktor ich verwenden möchte? Warum ist diese Funktionalität syntaktisch zulässig?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage