Oke, VB kende deze functionaliteit al langer, C# straks vanaf versie 4 ook.
Je kent dat wel he. Je hebt een Class gedefinieerd met meerdere methoden. Soms zijn de parameters optioneel. Nu zouden we dan meerdere overrides van de methode maken. Op zich niets mis mee, maar levert uiteindelijk wel een beheer hel op. Wat als er een default waarde verandert, dan zul je dat waarschijnlijk op meer dan een plek moeten aanpassen.
Hieronder een aantal aanroepen van een methode waarvan een aantal parameters optioneel zijn. Oke, de optionele parameters moeten altijd aan het eind staan, maar dat is niet zo vreemd eigenlijk. Bij het aanroepen van de methode kun je kiezen voor een named parameter of volgorde.
Uiteraard krijg je gewoon een compile error, als je de niet verplichte parameters ook niet meegeeft.
Dit is de definitie van de methode.
Zoals je ziet, heb ik constanten gebruikt voor de default waarde van de parameters. In eerste instantie wilde ik een lege string als default waarde opgeven. Ik dacht string.Empty te gebruiken, maar helaas wordt dat niet gepikt.
Mijn test applicatie toonde dit dan uiteindelijk.
Mooie oplossing zorgt in elk geval voor schone code.