次のような記録があります。
Tcustomer=record
Name: string;
IDNumber: Integer;
IsMarried: boolean;
end;
そしてTCustomers_Manager
、すべての顧客のリストを格納するクラスがあります。次のような手順を実行することは可能ですか。
Procedure ChangeCustomer(CustomerIndex: integer; field: string; value);
これにより、その特定のフィールドの値が設定されます。例えば:
ChangeCustomer(1, 'Name','John');
どうすればこれを実装できますか?
更新:明確にするために、私の質問は基本的に2つの部分に分かれています:
1) フィールド名 (文字列) をレコード内の実際のフィールドにマップするにはどうすればよいですか?
2) 型の異なる値を渡すことは可能ですか? または、単一の型を渡して型キャストする必要があります(文字列を渡してから使用するなどstrtoint()
)