C# 嵌套结构作为类中的成员

C# 嵌套结构作为类中的成员,c#,.net,class,struct,C#,.net,Class,Struct,我正在写一个包含90个整数变量的类。基本上有10个,但每个都有3x3个属性,使它们成为90个。我会进一步解释的 所以我有10个变量:v0,v1,v2,…,v9。对于城市、县和州,每个值都有3个不同的值。此外,对于过去、现在和未来,每一项都有3个不同的值 因此,一个典型的值是:v3.City.Future或v7.State.pass或v8.country.Present 我想实现一个类,每个变量有10个结构,然后每个结构都有3个嵌套结构(城市、县和州),每个结构都有3个整数变量,分别代表过去、现在

我正在写一个包含90个整数变量的类。基本上有10个,但每个都有3x3个属性,使它们成为90个。我会进一步解释的

所以我有10个变量:v0,v1,v2,…,v9。对于城市、县和州,每个值都有3个不同的值。此外,对于过去、现在和未来,每一项都有3个不同的值

因此,一个典型的值是:v3.City.Future或v7.State.pass或v8.country.Present

我想实现一个类,每个变量有10个结构,然后每个结构都有3个嵌套结构(城市、县和州),每个结构都有3个整数变量,分别代表过去、现在和未来

这仍处于概念阶段。我试图采用上述方法,但不起作用。请随时提出建议

谢谢

更新:

以下是代码片段:

public class MyClass
{
    public MyVariable myvariable;
}

public struct MyVariable
{
    public struct National
    {
        public int Past { get; set; }
        public int Present { get; set; }
        public int Future { get; set; }
    }
    ...
}
现在,当我实例化该类并访问该成员(myclass.myvariable.National.pass)时,它不会获取该成员。

您的“问题”实际上根本不是一个问题,但这里有一组简单的类来完成它。我使用类而不是结构,因为如果使用结构,您需要了解一些“陷阱”

除非您描述“它不工作”,否则我打赌您的问题实际上是您试图使用结构

请发布您的代码,并描述您的症状,以便我们更好地帮助您

public class Foo<T>
{
    public T Future;
    public T Present;
    public T Past;
}

public class Bar
{
    public Foo<string> City;
    public Foo<string> State;
    public Foo<string> Country;
}

public class Top
{
    public Bar v0;
    public Bar v1;
    //...
    public Bar v2;
}
公共类Foo
{
公共关系与未来;
公众不在场;
公众的过去;
}
公共类酒吧
{
公富城;;
公共食品州;
公共食品国家;
}
公务舱头等舱
{
公共酒吧v0;
公共酒吧v1;
//...
公共酒吧;
}

根据您的评论,您似乎在混合类型和实例:

假设您的MyVariable如下所示:

public struct MyVariable
{
    public struct National
    {
       public int Past;
    }
  public National ValueForNational;
}
myclass.myvariable.National
-它是一种类型(不会编译)

myclass.myvariable.National.pass
-它是类型的成员(不会编译)

myclass.myvariable.ValueForNational
-是myclass'变量中myvariable成员成员的值(将编译)


myclass.myvariable.ValueForNational.pass
-可能是您想要的…

以下是答案:

public struct PeriodVars
{
    public int Past { get; set; }
    public int Present { get; set; }
    public int Future { get; set; }
}

public struct VarStruct
{
    public PeriodVars City;
    public PeriodVars County;
    public PeriodVars State;
}
现在课程将是:

public class MyClass
{
    public VarStruct v0;
    public VarStruct v1;
    ...
}
一旦我实例化了类的一个对象,我就可以这样引用它:

objMyClass.v0.City.Past = 111;
除了批评之外,我把它贴在这里并没有得到什么帮助


通常,一个人无法理解被视为另一个人无法解释。我花了15-20分钟写问题,人们在不到30秒的时间内就开始投票了。

你说的“它不起作用”是什么意思?听起来应该是一门课,也许你可以发布一些代码,这样我们就可以看看什么不起作用,并能够提供帮助。听着,伙计们,如果你不能理解这个问题,即使它被回答了,你也不必经常投反对票。这太荒谬了。你能为“现在当我实例化类并访问成员(myclass.myvariable.National.Past)时,它没有得到成员”发布代码吗;如果这是您的全部代码,那么除了实例化类之外,您什么也没做。您如何设置这些值?您如何检索这些值?你在看什么?你希望看到什么?我们不是通灵者。