相关疑难解决方法(0)

无法更改泛型集合中struct的成员值

想象一下struct:

        struct Person
        {
             public string FirstName { get; set; }
             public string LastName { get; set; }
        }
Run Code Online (Sandbox Code Playgroud)

以下代码:

        var list = new List<Person>();
        list.Add(new Person { FirstName = "F1", LastName = "L1" });
        list.Add(new Person { FirstName = "F2", LastName = "L2" });
        list.Add(new Person { FirstName = "F3", LastName = "L3" });

        // Can't modify the expression because it's not a variable
        list[1].FirstName = "F22";
Run Code Online (Sandbox Code Playgroud)

当我想要更改Property它的值时,它会给我以下错误:

Can't modify the expression because it's not …
Run Code Online (Sandbox Code Playgroud)

.net c# struct generic-list generic-collections

8
推荐指数
2
解决办法
5427
查看次数

无法修改返回值,因为它不是变量

我有一个叫做的课BaseRobot:

  var robot2 = new BaseRobot(0, 0, 0);
  private Point mHome;
  public Point Home
  {
      get { return mHome; }
  }
Run Code Online (Sandbox Code Playgroud)

这就是创造原始住宅的地方,我想在这里创建一个新家program.cs.我有以下代码,但它不起作用,它提出错误说

无法修改返回值,因为它不是变量.

码:

     robot2.Home.X = 1
     robot2.Home.Y = 5;

            {

                Console.WriteLine("===New robot at specified home position===");
                StringBuilder ab = new StringBuilder();
                ab.AppendFormat("Robot#2 has home at <{0},{0}>.\r\n ", robot2.Home.X, robot2.Home.Y);
                ab.AppendFormat("It is facing {0} ", robot2.Orientation);
                ab.AppendFormat("and is currently at <{0},{0}>.\r\n", robot2.Position.X, robot2.Position.Y);
                Console.WriteLine(ab.ToString());
            }
Run Code Online (Sandbox Code Playgroud)

如何为x和Y分配新值?

c# oop

6
推荐指数
4
解决办法
2万
查看次数

标签 统计

c# ×2

.net ×1

generic-collections ×1

generic-list ×1

oop ×1

struct ×1