Oma*_*mar 2 c# types visual-studio
我过去几乎一直使用隐式类型,但由于有人告诉我使用关键字var是一种不好的做法,我现在尝试使用显式类型。为此,我倾向于使用快捷方式Ctrl+.将任何隐式类型更改为显式类型。
尽管如此,今天我不得不在一个 Foreach 中处理两个列表。为此,我使用了.Zip()方法。我尝试将其隐式类型更改为显式类型,但我不能。我也尝试使用我提到的快捷方式,但由于某种原因没有选项。
var test = enemyTeam.Zip(imageList, (c, i) => new { Champion = c, Image = i });
Run Code Online (Sandbox Code Playgroud)
我也尝试过这种隐式类型但没有用:
IEnumerable<new { CurrentGameParticipant Champion, PictureBox Image }> test = enemyTeam.Zip(imageList, (c, i) => new { Champion = c, Image = i });
Run Code Online (Sandbox Code Playgroud)
new { Champion = c, Image = i }是一种匿名类型,这也是var关键字首先存在的全部原因。
你不能给一个明确的名字。它是匿名的。有关为什么存在以及如何使用它的更多详细信息,请参阅在 C# 中使用 var 关键字var。
您可能更喜欢使用值元组;例如(c, i) => (Champion: c, Image: i)。这类似于匿名类型,但您可以使用值元组类型(例如IEnumerable<(CurrentGameParticipant, PictureBox)> test;or )显式声明变量IEnumerable<(CurrentGameParticipant Champion, PictureBox Image)> test;。
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |