C # Optionaler Array-Parameter für Klasse
Ich weiß, dass dies mit @ gemacht werden kanull
Also habe ich eine Problemumgehung dafür, aber ich habe mich gefragt, ob es einen besseren Weg gibt, wie ich ein optionales @ haben kanint[]
Parameter für eine Klasse?
class PriceLevels
{
public int[] priceLevels { get; }
private readonly int[] defaultPriceLevels = { 2, 3, 3, 4, 5, 6 };
public PriceLevels(int[] newPriceLevels = defaultPriceLevels)
{
priceLevels = newPriceLevels;
}
}
Dies gibt mir einen Fehler, der besagt, dass es sich um einen ungültigen Ausdruck handeltdefaultPriceLevels
muss konstant sein. Wie kann ich das beheben?
Eine Umgehung, an der ich etwas ändern kann, ist diese, aber die Lösung gefällt mir nicht wirklich
class PriceLevels
{
public int[] priceLevels { get; }
private readonly int[] defaultPriceLevels = { 2, 3, 3, 4, 5, 6 };
public PriceLevels(int[] newPriceLevels = null)
{
if(newPriceLevels == null)
priceLevels = defaultPriceLevels;
else
priceLevels = newPriceLevels;
}
}