got a question that I hope is easy to answer!
I'm self teaching myself C# right now - I do know JavaScript and PHP so far. One thing I've been struggling with is how to deal with List<>, Dictionary<> etc, with regard to actually initiating these things - if that makes sense.
So for example, I have the record:
record Beat(string beat, int note, List<int> loc, bool powerup);
but I'm having the hardest of time actually declaring this record. For example, I tried this:
Beat beat = new Beat("00:00", 2, [200,400], true);
or even
Beat beat = new Beat("00:00, 2, new(200,400), true);
which both produce errors and I just can't figure out how i'm supposed to declare this.
So I appreciate any help or pointing in the right direction. I tried to Google it but couldn't formulate the query correctly! :)
CodePudding user response:
For a list, you will need to create a new one, and (optionally) add stuff to it.
ex:
Beat beat = new Beat("00:00", 2, new List<int> { 200, 400 }, true);
Alternatively, if you were to change your parameter to an ICollection<int>
, you would have a bit more flexibility, and you could use the array syntax, which is a bit less typing
Beat beat = new Beat("00:00", 2, new [] { 200, 400 }, true);
CodePudding user response:
In C#, you can initialize with curly brackets, and specify the property names; like this:
Beat b = new Beat { beat = "xxx", note = 100, loc = new List<int>() { 1, 2, 5 }, powerup = false };