• TDictionary字典 记录 的赋值。


    type TRen = record
      age: Integer;
      //把name定义成结构的属性.
      private
        Fname: string;
        procedure Setname(const Value: string);
      public
        property name: string read Fname write Setname;
    end;
    
    procedure TRen.Setname(const Value: string);
    begin
      Fname := Value;
    end;
    
    procedure TForm3.Button1Click(Sender: TObject);
    var
      MyRen: TRen;
      MyDic: TDictionary<string,TRen>;
      I: Integer;
      MyKeyAry: TArray<string>;
    begin
      MyDic := TDictionary<string,TRen>.Create();
      try
        //---------------------------------------
        for I := 0 to 2 do
        begin
          MyRen.name := '群主'+IntToStr(I);
          MyRen.age := I;
          MyDic.Add('key'+IntToStr(I),MyRen);
        end;
    
        //---------------------------------------
        MyKeyAry := MyDic.Keys.ToArray;
        for I := 0 to MyDic.Count-1 do
        begin
          //如果是结构的属性,这么赋值是可以的.
          MyDic[MyKeyAry[I]].name := '操蛋'+IntToStr(I);
          //下面修改这个age这么干就不行,age不是结构的属性.
          MyDic[MyKeyAry[I]].age := IntToStr(I);
        end;
    
        ShowMessage(MyDic['key1'].name);
      finally
        MyDic.Free;
      end;
    end;

    不解。。。。delphi就是 这么设计的,先这么搞吧

  • 相关阅读:
    Maxwell的vbs脚本转matlab
    maxwell电机直观理解
    maxwell电机转矩扫描与使用MTPA策略绘制效率map图
    maxwell施加均匀外磁场
    maxwell的那些坑&小技巧
    maxwell主从边界
    MySql基础
    数据结构知识结构框架图
    第八章 多线程
    软件
  • 原文地址:https://www.cnblogs.com/del88/p/4386581.html
Copyright © 2020-2023  润新知