宣布成员优先published于public:
那么宣布成员public而不是published?请问published有什么缺点?或者我应该经常宣布成员published吗?
PS:不重复; 在发布我的问题之前,我已经阅读了这个问题及其所有答案."可能重复"的问题解释了两个关键字之间的区别,但在使用任何一个关键字时都没有提供指导,或者使用任何一个关键字的优点/缺点.
声明为已发布会产生存储成本,因为可执行文件的大小会膨胀以包含RTTI.宣布公开可以避免这种成本.它不太可能无关紧要,特别是考虑到现代Delphi可执行文件的庞大规模,因为它们执行的大量代码甚至从未执行过.
对于可以在Object Inspector中编辑的组件,public和之间的区别published更为重要.如您所说,这是组件如何确定在Object Inspector中可见的属性.有些属性应该在那里可见,有些则不可见.网友"TLama"给那些需要是公共性质的典范,但不应该是在Object Inspector编辑:Parent,Handle等等.
除此之外,它归结为意见.完全取决于你决定做什么.