我该如何自动安排?(How can I make proper arrangement automatically?)
我的代码;
label1.Text = "myLine1\nmyLine2\nmyLine3"; label2.Text = "myLine4";
你可以看到,我输了第3行。
我想这样做。
(我试了好几次试验和错误。我已经将“Label2”移到了较低的位置。我想找出Label1和Label2之间的一些自动排列)。
My codes;
label1.Text = "myLine1\nmyLine2\nmyLine3"; label2.Text = "myLine4";
As you can see it, I lost line 3.
I'd like to make like this.
(I made it with several times of trial and error. I've moved "Label2" lower position. I'd like to find out some automatic arrangement between Label1 and Label2).
原文:https://stackoverflow.com/questions/38372597
更新时间:2023-06-18 15:06
最满意答案
是的,这是针对OOP的。 你的关系是
has-a
,而不是is-a
。你应该使用组合而不是继承。
class Country{ Military m; //Country has-a military int a,b; public: Country(); void doSomething(); } class Military{ Technology t; //Military has-a technology public: Military(); void doAnother(); void doAnother2(); } class Technology{ public: Technology(); void doAnother3(); }
Yes, it's against OOP. You relationships are
has-a
, notis-a
.You should use composition instead of inheritance for this.
class Country{ Military m; //Country has-a military int a,b; public: Country(); void doSomething(); } class Military{ Technology t; //Military has-a technology public: Military(); void doAnother(); void doAnother2(); } class Technology{ public: Technology(); void doAnother3(); }
相关问答
更多-
在一个好的OOP设计中,我们应该用什么来代替“经理”类?(What we should use instead of a “manager” class in a good OOP design?)[2020-11-24]
也许: 加载资源 - > ResourceLoader 通过标识符 - > ResourceMapper映射资源 确保只加载一次资源 - > CachedResourceLoader /它在尚未加载时使用ResourceLoader 免费未使用的资源(使用smartpointers) - >? /不知道这个,但加载+卸载看起来像高度凝聚力的概念 在有关“免费未使用的资源”的评论中增加额外信息: 首先,让我们明确我们只有以上两个涉及:ResourceMapper和CachedResourceLoader。 由 ... -
使用C ++的OOP设计模式(OOP Design Patterns using C++)[2022-02-18]
我想有很多书籍和资料来源,你可以找到这些信息,我会给你指几本书,你可以在网络上找到纸质和PDF格式: “设计模式”由“四人帮”(Addison-Wesley,1994)。模式的权威指南。它在C ++和Smalltalk中都有例子,尽管它可能有点难以理解。 “设计模式为假人”,作者:Steve Holdner(Willey Publisinh Inc.,2006)这本书更简单,更容易理解/遵循。 从计算机科学的角度来看,它可能有点“弱”或非正式,但我确信你可以从本书中通过学习一种给定的设计模式开始,并通过Go ... -
这可能会更先进,然后才能开始正确的轨道。 如果你不了解这里的所有内容,不要太担心。 这是Scott Hanselman与Bob叔叔交谈描述SOLID http://www.hanselminutes.com/default.aspx?showID=163 您还可以查看Object Mentor http://www.objectmentor.com/videos/video_index.html上可用的资源 玩的开心! This may be more advanced then you are after ...
-
OOP类设计(OOP classes design)[2021-06-15]
更好的方法是: interface Algorithm { void executeAlgorithm(); } 并有类,实现算法接口,而不是功能。 Algorithm1,Algorithm2,Algorithm3等。 有桌子: Algorithm[,] algorithmTable = { { new Algorithm1(), new Algorithm2() }, { new Algorithm3(), new Algori ... -
Java oop设计验证(Java oop design verification)[2023-01-02]
这完全没有意义吗? 如果你的三个对象有你所说的type ,那么它就没用了,因为你只能在你的超类中编写一个setter和getter而不是在每个子类中实现它。 事实上,如果每个子类都有一个公共属性,那么超类就没用了。 然后对于颜色,您可以使用Enum而不是静态变量: public enum Colours{ YELLOW, RED, WHITE, NORMAL } 例如,使用Colours.RED访问它们。 Is this totally pointless? if your three objec ... -
我的OOP设计是否正确?(Is my OOP design correct?)[2022-04-07]
如果您对每个供应商有不同的行为,则选项1将更合适,在这种情况下,选择2与其更简单似乎是更好的选择。 当我不知道如何解决问题时,我通常会这样做: 列出我的要求:获得给定供应商组件的最佳价格。 创建候选对象列表:供应商,项目,零售商等 绘制或布局类与我认为我有道理的关系 当我迷路时,我开始为要求编写主要类,在这种情况下,它将是零售商和GetBestRetailer()方法。 对于上述任何情况,无论你是否错误都无所谓,是一种头脑风暴,可以更好地理解你必须达到的目标以及找到的选择。 每当你遇到困难的事情时,我都会通 ... -
如果每个方法都只是一个直接调用数据源的静态调用,那么“Posts”类实际上就是一个Factory。 您当然可以将“Posts”中的静态方法放入“Post”类(这是CSLA的工作方式),但它们仍然是工厂方法。 我会说“Posts”类的更现代和准确的名称将是“PostFactory”(假设它只有静态方法)。 我想我不会说这是一种“程序性”方法 - 它只是一个误导性的名称,你会假设在现代OO世界中“帖子”对象是有状态的并提供操纵和管理一组的方法“发布”对象。 If every method is just a s ...
-
是的,这是针对OOP的。 你的关系是has-a ,而不是is-a 。 你应该使用组合而不是继承。 class Country{ Military m; //Country has-a military int a,b; public: Country(); void doSomething(); } class Military{ Technology t; //Military has-a technology public: M ...
-
在gof书中,客户端是使用模式中的类的代码或类。 例如,从动机下的抽象工厂模式: 考虑支持多种外观标准的用户界面工具包,例如Motif和Presentation Manager。 不同的外观定义了用户界面“小部件”(如滚动条,窗口和按钮)的不同外观和行为。 为了在外观标准之间移植,应用程序不应对其小部件进行硬编码以获得特定的外观。 在整个应用程序中实例化特定于外观的小部件类使得以后很难改变外观。 我们可以通过定义一个抽象的WidgetFactory类来解决这个问题,该类声明了一个用于创建每种基本类型的小部件 ...
-
面试中的OOP设计问题(OOP Design Problems in Interviews)[2022-06-14]
您是否被要求进行高级模型(模块)设计或低级模型设计? 处理高级模型设计的大问题或域是一个好主意,因为对于低级模型设计通常需要较小的问题或域。 通常,要求/问题来自提问者(用户/访谈员),因此我们不再需要定义业务要求。 但我们仍然需要设计系统。 高级模型 我不太熟悉“Apple Genius推荐系统”所以我将使用不同的问题类比,这是常见Point Of Sales问题。 对于高级模型,您将定义整个系统。 通常约为: 排序 下订单 首付 货物交付 返回 这就是所有高级模型/模块。 如果我被问到如何实现该模型,我 ...