- 你能举例说明重复的具体情况吗?
- 构建库对象的结构和概念与标准库的概念并不完全冲突。但如果你能注意到,库是建立在标准 CObject 和 CArrayObj 的基础上的。
无论如何,我很乐意回答问题,接受批评和建议。
感谢您的关注。
1.具体来说,我指的是代码开头的部分"在类代码 的基础上编写方法,以简化对象属性的设置和返回:"。
根据我的理解,这是对基类中函数的描述,也就是说,这些函数对所有对象都是详尽无遗的,并且访问级别为公共,如果创建一个继承者,它将看到所有这些函数,但并不是每个对象都有控制和文本输出的属性,例如,等等....。当然 ,获得 基类 的 所有功能、日志输出等可能是有意义的,但在创建继承者时,有必要将所有不能应用于继承者类的函数虚拟化并隐藏在访问级别 private 中。
也许这就是您实现的诀窍,如果是这样的话,那么超级!))))))
顺便说一句,也许对于某些函数来说,protected 级比public 级更合适,但在这里你更清楚,当然,这取决于你的理解。
2.是的,我再次查看了您的代码,您构建库的概念与我的不同,我同意,最主要的是,当您创建上层类时,要创建虚拟的公共函数,这样其他开发人员就可以使用您的解决方案,而无需直接编辑库。
3.我还注意到,你使用了字符串合并+,在某些版本的终端中,在大合并和长时间终端操作时,这种实现方式会出现不可预知的情况。)
我使用 StringFormat 和 StringAdd 函数后,工作的可靠性提高了,代码的可读性也更强了。
4.我还想提醒一下渲染时 创建对象长度的限制,请记住这一点,最好从名称生成哈希值,并在其基础上创建对象,该限制有一个标准函数,我记不清楚了,但可能是 ResourceCreate....
1.具体来说,我指的是代码开头的部分"在类代码 的基础上,我们将编写简化访问对象设置和返回属性的方法:"。
根据我的理解,这是对基类中函数的描述,即它们对所有对象都是详尽无遗的,并且访问级别为公共,如果创建了一个继承者,它将看到所有这些函数,但并不是每个对象都有控制和文本输出的属性,例如,等等....。当然 ,获得基类 的 所有功能、日志输出等也许是有意义的,但在创建继承者时,有必要将所有不能应用于继承者类的函数虚拟化并隐藏在访问级别 private 中。
也许这就是您实现的诀窍,如果是这样的话,那么超级!)))))))
顺便说一句,也许对于某些函数来说,protected 级比public 级更合适,当然,您更清楚其中的含义。
2.是的,我再次查看了您的代码,您的库构建概念与众不同,我同意,最主要的是,当您创建上层类时,应创建虚拟的公共函数,这样其他开发人员就可以使用您的解决方案,而无需直接编辑库。
3.我还注意到您使用了 "+"来组合字符串,在某些版本的终端中,当组合较多且终端操作较长时,会出现不可预知的情况,这种实现方式获得了))))。
我使用 StringFormat 和 StringAdd 函数后,工作的可靠性提高了,代码的可读性也更强了。
4.我还想提醒一下渲染时 创建对象的长度限制,请记住,最好生成名称缓存并在其基础上创建对象,该限制有一个标准函数,我记不清楚了,但可能是 ResourceCreate....
1.方法的公开性和冗余性是希望通过多种不同方式访问相同属性的代价。但有些方法确实是虚拟的,或者只在继承者中规定。但这同样只适用于库本身的对象。从它们继承时,所有公共方法都将被继承。
2.我会考虑的。但实际上,最高级别的访问将是进入库的另一个入口,它将是用户定义的函数,再次重复库中已实现的功能,但对普通用户来说更容易理解--只需使用函数得到结果,而不必发明逻辑和处理程序--所有这些都将在库中完成,输出将是用户函数,只需得到必要的信息即可。
3.我没有对任何东西进行优化(除了事先考虑好的逻辑),也没有对任何东西进行剖析。这是最后的工作。
4.用我的方法检查过。长对象名称是可能的。不过谢谢你,我会记住并留意的。
1.把方法变成公共的和多余的,是想用多种不同方法访问相同属性的代价。但有些方法确实是虚拟的,或者只在继承者中规定。但这同样只适用于库本身的对象。当从它们继承时,所有公共方法都将被继承。
2.我会考虑的。但实际上,最高级别的访问将是进入库的另一个入口,它将是用户定义的函数,同样是重复库中已经实现的功能,但对普通用户来说更容易理解--只需使用函数得到结果,而不必发明逻辑和处理程序--所有这些都将在库中完成,输出将是用户函数,只需得到必要的信息即可。
3.我没有对任何东西进行优化(除了事先考虑好的逻辑),也没有对任何东西进行剖析。这是最后的工作。
4.用我的方法检查过。长对象名称是可能的。不过谢谢你,我会记住并留意的。
4.这个错误可能已经消除了,但还不确定......函数似乎起作用了,但没有创建对象,这是长度较大时的行为。
新文章 DoEasy 函数库中的图形(第八十三部分):抽象标准图形对象类已发布:
在本文中,我将创建抽象图形对象类。 该对象用作创建标准图形对象类的基础。 图形对象拥有多种属性。 因此,在实际创建抽象图形对象类之前,我还需要做很多的准备工作。 这项工作包括在函数库的枚举中设置属性。
重新编译并启动 EA。
各种图形对象都被加到图表上,而日志会显示有关所添加新对象的消息,及其简述:
正如我们所见,一切都按预期运行。
作者:Artyom Trishkin