在 C# 中,本地结构实例和成员结构实例有什么区别? [英] In C#, What is different between local struct instance and member struct instance?

查看:18
本文介绍了在 C# 中,本地结构实例和成员结构实例有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

下面是简单的 C# 结构体示例.

It is simple C# struct example below.

public struct MyStruct
{
    public int a;

    public void Foo()
    {
         //Do something
    }
}

public class Test
{
    Mystruct st;
    void DoSomething()
    {
        st.Foo();
    }    
}

我知道如果我们使用没有 new 的 struct 实例,则必须在使用前初始化成员字段.但上面的例子没有任何错误.为什么?

I had known If we use struct instance without new, member field must be initialized before use. but example above don't have any error. why?

推荐答案

这与 struct 无关.

在 C# 中,每个(局部)变量都必须先初始化(赋值),然后才能使用.

In C#, every (local) variable has to be initialized (assigned a value) before you can use it.

类的字段在创建类的实例时初始化为其默认值,因此您不必在构造函数中显式分配值.

Fields of classes are initialized to their default value when an instance of the class is created, so you don't have to assign a value explicitly in your constructor.

这篇关于在 C# 中,本地结构实例和成员结构实例有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆