访问一个结构领域 [英] Accessing the fields of a struct

查看:88
本文介绍了访问一个结构领域的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为什么下面的代码没有产生输出?



 静态无效的主要(字串[] args)
{
的FieldInfo [] F1 = typeof运算(MYSTRUCT).GetFields(BindingFlags.Public);
的foreach(在连接字段信息资讯)
{
Console.WriteLine(info.Name);
}
}

公共结构MYSTRUCT
{
公众诠释之一;
公众诠释2;
公众诠释三样
公众诠释四日;
公众诠释五类;
公众诠释六十六人。
公共BOOL 7;
公共字符串八人
}


解决方案

您需要或例如结合为好。更改您的代码:

 的FieldInfo [] F1 = typeof运算(MYSTRUCT).GetFields(BindingFlags.Public | BindingFlags.Instance); 
的foreach(在连接字段信息资讯)
{
Console.WriteLine(info.Name);
}


Why does the following code produce no output?

static void Main(string[] args)
{
    FieldInfo[] fi = typeof(MyStruct).GetFields(BindingFlags.Public);
    foreach (FieldInfo info in fi)
    {
        Console.WriteLine(info.Name);
    }
}

public struct MyStruct
{
    public int one;
    public int two;
    public int three;
    public int four;
    public int five;
    public int six;
    public bool seven;
    public String eight;
}

解决方案

You need to or in the instance binding as well. Change your code to:

FieldInfo[] fi = typeof(MyStruct).GetFields(BindingFlags.Public | BindingFlags.Instance);
foreach (FieldInfo info in fi)
{
	Console.WriteLine(info.Name);
}

这篇关于访问一个结构领域的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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