“什么是”呢;新类名(){variables}";在c#中?

“什么是”呢;新类名(){variables}";在c#中?,c#,unity3d,C#,Unity3d,我是unity开发者。但是我没有太多的c语言知识,因为我把大部分时间都花在了Java上。今天我在unity中遇到了一个我无法理解的代码: new IDs(){{ kProductNameAppleSubscription, AppleAppStore.Name },{ kProductNameGooglePlaySubscription, GooglePlay.Name },} 现在我的问题是:这里做了什么?调用了一个构造函数,然后调用了一个新的参数和一些变量 这是一个C#collection

我是unity开发者。但是我没有太多的c语言知识,因为我把大部分时间都花在了Java上。今天我在unity中遇到了一个我无法理解的代码:

new IDs(){{ kProductNameAppleSubscription, AppleAppStore.Name },{ kProductNameGooglePlaySubscription, GooglePlay.Name },}
现在我的问题是:这里做了什么?调用了一个构造函数,然后调用了一个新的参数和一些变量

这是一个C#collection初始值设定项。实际上,您调用了Add()两次。实际创建的对象取决于ID类。ID类必须实现ICollection接口,此代码才能工作

var me = new List<string>() { {"some string"}, { "string"} };
var me=new List(){{“some string”},{“string”};

您确定复制的内容正确吗?它看起来像是对象初始值设定项和数组/集合初始值设定项的组合。如果可以,请显示
IDs
类的声明。您肯定是指
ICollection
而不是
IEnumerable
。但即使这样也不正确。它只需要一个
Add()
方法,不管是哪个接口声明的
IEnumerable
没有
Add()
。是的,RenéVogt,对不起,我弄错了,我只是按照我的IntelliSense建议做的。我已经更新了我的答案。谢谢