假设我有一个数据结构,例如
d dog DS qualified
d name 20
d breed 20
d birthdate 8 0
Run Code Online (Sandbox Code Playgroud)
然后我可以定义
d poochie likeds(dog)
Run Code Online (Sandbox Code Playgroud)
并使用poochie.name等
但是,我可以将"狗"设置为模板,而无需在内存中创建结构吗?
我想到了两种选择.第一种是使用dog属性的d-specs创建一个源成员,而不是使用likeds(dog),在每个将使用该子字段定义的数据结构之后都有/ copy.在我看来,这可能会造成一些草率的代码,并且可能使某些人难以分析道路.另一方面,如果您在多个程序中使用相同的数据结构,则有一些好处.
想到的第二个选项是在dog数据结构上使用Based()关键字,然后定义指针字段.指针字段将占用一些内存,但是狗数据结构在程序分配之前不会占用任何内存.使用LikeDS(),Based()关键字不会转移到针对它定义的其他数据结构中.这样,您就可以在程序源中定义数据结构.您不必为它分配内存,也不必将指针设置为任何值.它默认为Null.请注意不要在代码中访问dog数据结构.你将得到一个指针错误,看起来与没有必需参数的程序被调用时相同.
| 归档时间: |
|
| 查看次数: |
4753 次 |
| 最近记录: |