小编Vla*_*myh的帖子

在c#中将bool表达式转换为char

当我遇到类似下面的问题时,我通过了.NET测验.

Char ch = Convert.ToChar('a' | 'e' | 'c' | 'a');
Run Code Online (Sandbox Code Playgroud)

在控制台中我们可以看到ch变量的输出是g.

有人可以描述发生了什么吗?谢谢!

c# clr

23
推荐指数
3
解决办法
1771
查看次数

为什么集合初始值设定项与 getter-only 属性一起使用?

对我来说,这是非常不可预测的代码结果。

没想到这段代码会产生这样的结果。

因此,我阅读了 Jeffrey Richter 的书(clr ia c#),并且有一个包含此代码的示例。

internal class ClassRoom
{
    private List<String> _students = new List<string>();
    public List<String> Students { get { return _students; } }
}

ClassRoom classRoom = new ClassRoom
{
    Students = {"Mike", "Johny", "Vlad", "Stas"}
};

foreach (var some in classRoom.Students)
{
    Console.WriteLine(some);
}
Run Code Online (Sandbox Code Playgroud)

而且,正如你们中的一些人所建议的,我们可以在控制台中看到四个名称。所以,我的问题是:

我们如何获得我们的名字,如果他们要分别在学生和 _students 中,由于不存在学生二传手而未分配。

__________编辑_1_______________

我阅读了您的回答,并感谢您的回答。

但是,你知道,这是一种误解……我真的想不通。

当我初始化学生时,我初始化_students

还有什么不那么重要,当我从 IEnumerable( some ) 中获取变量时,我从Students 中获取变量?我想不是。

我不明白,我到底在哪里分配变量(初始化)_students集合?

谢谢你帮我弄清楚!

c# clr properties getter-setter

5
推荐指数
1
解决办法
574
查看次数

我们如何在编辑模式(Unity3d)中销毁子对象?

这是一种奇怪的事情,但是如果您尝试使用DestroyImmediate函数销毁子对象,那么您将获得不可预测的结果。

在我的例子中,Unity 并没有销毁所有的孩子,而是只销毁了其中的一半。

        foreach(var child in parent)
        {
            DestroyImmediate(child);
        }
Run Code Online (Sandbox Code Playgroud)

c# unity-game-engine

5
推荐指数
2
解决办法
6397
查看次数

为什么Unity在编辑器文件夹中提供"启用切换"脚本?

我有一个我在UnityEditor中使用的monobehaviour类.它看起来像这样: 在此输入图像描述

当我将它放入Editor文件夹时,检查器会更改为: 在此输入图像描述

为什么会这样,这是什么意思?

c# editor unity-game-engine

4
推荐指数
1
解决办法
128
查看次数

标签 统计

c# ×4

clr ×2

unity-game-engine ×2

editor ×1

getter-setter ×1

properties ×1