C# syntax - Colon after a variable name

南笙酒味 提交于 2020-01-22 08:17:59

问题


Quick question; I've recently upgraded to VS2010, and got the new version of ReSharper.

Now, when ReSharper is giving me autocomplete options for a variable, it give me the option of <variableName>:

What does the : stand for?

For example; I have this:

var productIds = new List<int>(inventoryItemsToProcess.Keys);

And when I start typing out a line like this:

var lastOrderDates = GetProductLastOrderDates(pro

It gives me the option for productIds as well as productIds:

What's the difference between the two?


回答1:


The second is for C# 4.0 named arguments. And here's a link on MSDN.




回答2:


The colon is necessary to indicate parameters. In C# 4.0, you can re-order and name your parameters, optionally, but the variable name must match the prototype and have the colon postfix.

public void Test(string something1, string something2)
{
}

can be called as:

Test(something2: "bar", something1: "foo");

if you want



来源:https://stackoverflow.com/questions/3283781/c-sharp-syntax-colon-after-a-variable-name

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!