C# 如何解决这个问题;指针式;在C中#

C# 如何解决这个问题;指针式;在C中#,c#,.net,C#,.net,我的代码如下: class A { } class B { public List<A> LstClassA; public static A CurrentA; public void AddA(A a) { LstClassA.Add(a); CurrentA = a; } } 我只想将正在处理的当前项存储在静态成员中,以便于操作:D 更新2 例如,我有这样的类项目: class Project { }

我的代码如下:

class A { }

class B
{
    public List<A> LstClassA;
    public static A CurrentA;

    public void AddA(A a)
    {
        LstClassA.Add(a);
        CurrentA = a;
    }
}
我只想将正在处理的当前项存储在静态成员中,以便于操作:D

更新2

例如,我有这样的
类项目

class Project
{
}
类解决方案
(其中包含更多项目)


问题是我在
CurrentProject
中所做的操作没有在列表中更改为实例

我认为以下内容大致符合您的要求(不是静态的,但您已经有实例可以调用Add,不是吗):


我完全同意你的笑脸,为“轻松操纵”而创建静态场没有多大意义(除非我看错了你的笑脸)。“随机”更改的静态字段是长调试会话的良好来源。

它应将值更改为添加的最后一项。如果没有,这意味着类中有一些特殊的处理(可能是您试图更改的属性是struct,或者类是不可变的或类似的),我无法理解您想要什么。尝试发布一个您正在尝试执行的示例。您是否有多个类
B
?由于
CurrentA
是静态的,因此
B
的所有实例将共享同一个变量
CurrentA
将只包含添加到任何
B
实例的最后一个
A
实例。@MikeChristensen所有知道C如何工作的人都知道发布的代码没有任何问题;问题一定出在一些不存在的代码中,所以没有一个有知识的人回答。唯一愿意回答的人是那些认为发布的代码有问题的人(如果没有问题的话)。@BìnhNguyèn在您所有的示例中,包括最近的一个示例中,在任意位置(字段或列表中)修改变量都会反映在两个位置。给类赋予不同的名称不会改变任何事情。请提供一个我们可以运行的可编译示例,以及实际和所需的功能。您如何知道列表中的最后一项将是最近更改的项?@Servy,我不:)从所有相同的示例来看,OP似乎将最后一项视为当前项。。。但是OP可能需要完全不同的东西(比如简单地将“current”作为参数传递给所有
HandleCurrentItem
函数)。
class Project
{
}
class Solution
{
public List<Project> LstProject;
public static Project CurrentProject;
}
Project prj = new Project()
sol.LstProject.Add(prj);
Solution.CurrentProject = prj;
public A CurrentA {
  get { return LstClassA.LastOrDefault(); }
}