丹 丹尼路 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #1 我想设计这个两类,班级里面要包含所有学生的集合, 而学生的属性里又要有学生所在的班级, 可是这样就嵌套定义了,应该怎么做呢?
W wrl_001 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #2 这没什么问题吧,就比如说: TForm类中有Components属性存储了它包含EDit,ComboBox之类的组件,而这些组件的Owner甚至Parent属性又指向了这个Form。
D duhai_lee Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #3 这是一种办法: TGrade = class StudentList: TList; end; Tstudent = class ownGrade: TGrade; name,sex: string; end; 当你的学生类没有行为能力的时候, 你可以之直接让它成为 record.
这是一种办法: TGrade = class StudentList: TList; end; Tstudent = class ownGrade: TGrade; name,sex: string; end; 当你的学生类没有行为能力的时候, 你可以之直接让它成为 record.
B Beyondbill Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #4 你像下面这样做就行了 TGroup = class; TStudent = class private . . . 你的具体定义 end; TGroup = class private . . . 你的具体定义 end; 这样就不会嵌套定义了 如果放在两个单元文件里面,因为都是直接需要使用的,可能会存在你那种情况
你像下面这样做就行了 TGroup = class; TStudent = class private . . . 你的具体定义 end; TGroup = class private . . . 你的具体定义 end; 这样就不会嵌套定义了 如果放在两个单元文件里面,因为都是直接需要使用的,可能会存在你那种情况
丹 丹尼路 Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #5 TO duhai_lee: 我要在班级类添加一些行为,参数是学生类,这样定义就不行了吧,如果参数定义成TObject又感觉有点别扭。 TO Beyondbill: 我确实是定义在两个unit中的,所以有问题。 照你的方法改过,OK了,只是不知道这种方法是不是正规,呵呵。
TO duhai_lee: 我要在班级类添加一些行为,参数是学生类,这样定义就不行了吧,如果参数定义成TObject又感觉有点别扭。 TO Beyondbill: 我确实是定义在两个unit中的,所以有问题。 照你的方法改过,OK了,只是不知道这种方法是不是正规,呵呵。
A anyway Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #6 班级类包含学生类 但在班级类的InterFace段用TObject来引用 implement段再具体引用学生类单元
W waterspace Unregistered / Unconfirmed GUEST, unregistred user! 2006-03-21 #7 对于这种两个类的互相嵌套,应该是没什么办法吧。只能将一个定义成tobject吧