草庐IT

Subclassing

全部标签

python - 如何在 Python 中对 str 进行子类化

我正在尝试对str对象进行子类化,并为其添加几个方法。我的主要目的是学习如何去做。我被困的地方是,我应该在元类中对字符串进行子类化,并使用该元类创建我的类,还是直接创建子类str?而且,我想我需要以某种方式实现__new__(),因为我的自定义方法将修改我的字符串对象,并返回新的mystrobj。我的类的方法,应该完全可以与str方法链接,并且当自定义方法修改它时,应该总是返回一个新的我的类实例。我希望能够做这样的事情:a=mystr("something")b=a.lower().mycustommethod().myothercustommethod().capitalize()i

python - 如何在 Python 中对 str 进行子类化

我正在尝试对str对象进行子类化,并为其添加几个方法。我的主要目的是学习如何去做。我被困的地方是,我应该在元类中对字符串进行子类化,并使用该元类创建我的类,还是直接创建子类str?而且,我想我需要以某种方式实现__new__(),因为我的自定义方法将修改我的字符串对象,并返回新的mystrobj。我的类的方法,应该完全可以与str方法链接,并且当自定义方法修改它时,应该总是返回一个新的我的类实例。我希望能够做这样的事情:a=mystr("something")b=a.lower().mycustommethod().myothercustommethod().capitalize()i

python - 如何扩展 Python 枚举?

在Python3.4中扩展Enum类型的最佳实践是什么?甚至有可能这样做吗?例如:fromenumimportEnumclassEventStatus(Enum):success=0failure=1classBookingStatus(EventStatus):duplicate=2unknown=3Traceback(mostrecentcalllast):...TypeError:Cannotextendenumerations目前没有可能的方法来创建具有成员的基本枚举类并将其用于其他枚举类(如上面的示例中)。有没有其他方法可以实现Python枚举的继承?

python - 如何扩展 Python 枚举?

在Python3.4中扩展Enum类型的最佳实践是什么?甚至有可能这样做吗?例如:fromenumimportEnumclassEventStatus(Enum):success=0failure=1classBookingStatus(EventStatus):duplicate=2unknown=3Traceback(mostrecentcalllast):...TypeError:Cannotextendenumerations目前没有可能的方法来创建具有成员的基本枚举类并将其用于其他枚举类(如上面的示例中)。有没有其他方法可以实现Python枚举的继承?

C++ 模板 : how to determine if a type is suitable for subclassing

假设我有一些模板类取决于类型T.T几乎可以是任何东西:int,int*,pair或structlol;它不能是void,引用或任何cv合格的东西。对于一些优化,我需要知道我是否可以子类化T.所以,我需要一些特征类型is_subclassable,确定为基本特征的逻辑组合或通过一些SFINAE技巧。在原来的例子中,int和int*不可子类化,而pair和structlol是。编辑:正如litb在下面指出的,union也不可子类化并且T也可以是union类型。如何编写我需要的特征类型? 最佳答案 你要判断是否是非union类。我不知道有

ios - swift : Subclassing SlackTextViewController in tableview

我是swift的新手,正在构建小型聊天应用程序,我有一个问题。如何在tableview中子类化SlackTextViewController?我找不到适合初学者的教程。 最佳答案 我必须将它放在类(class)的顶部才能使pod“SlackTextViewController”正常工作。并且在BridgingHeader中似乎不需要任何与Slack相关的东西。importUIKitimportSlackTextViewControllerclassEXMessagingTableViewController:SLKTextViewC

ios - Swift 中的自定义 UI 元素 : Subclassing CALayer and overriding drawInContext results in pixelated drawing

我目前正在学习如何实现自定义控件。我不可避免地偶然发现了CALayer的可能性,因为在需要执行复杂的动画时使用UIImage不够灵活。我想将UIView用作CALayer的“容器”,以便它的宽度和高度始终与UIView相同(出于灵active目的)。我继承了CALayer并重写了drawInContext()方法。这是我在屏幕上得到的结果:这幅画看起来像素化且模糊。我正在使用PaintCode为我生成绘图代码。这是自定义CALayer:classSegmentActive:CALayer{funcframeSetup()->CGRect{letframeWidth:CGFloat=su

iphone - targetContentOffsetForProposedContentOffset :withScrollingVelocity without subclassing UICollectionViewFlowLayout

我的应用中有一个非常简单的collectionView(只有一行方形缩略图)。我想拦截滚动,以便偏移量始终在左侧留下完整图像。此刻它滚动到任何地方并会留下截断的图像。无论如何,我知道我需要使用该功能-(CGPoint)targetContentOffsetForProposedContentOffset:withScrollingVelocity要做到这一点,但我只是使用标准的UICollectionViewFlowLayout。我没有继承它。有没有什么方法可以在不继承UICollectionViewFlowLayout的情况下拦截它?谢谢 最佳答案

swift 3 : subclassing NSObject or not?

我读过一些帖子,例如thisone关于在Swift中子类化NSObject或仅拥有其原生基类class而没有子类化之间的区别。不过都是些老帖子了,这个话题我也不是很清楚。什么时候应该继承NSObject?继承它和不继承它之间的实际区别是什么?目前Swift中的推荐是什么? 最佳答案 Apple'sdocumentationaboutNSObject声明如下作为介绍:NSObjectistherootclassofmostObjective-Cclasshierarchies.ThroughNSObject,objectsinheri

objective-c - 为什么 UITableViewCell 选择时所有背景都消失了?

我当前项目的UITableViewCell行为让我感到困惑。我有一个相当简单的UITableViewCell子类。它向基本View添加了一些额外的元素(通过[self.contentViewaddSubview:...]并在元素上设置背景颜色,使它们看起来像黑色和灰色的矩形框。因为整个表格的背景都有这种混凝土般的纹理图像,所以每个单元格的背景都需要是透明的,即使在被选中时也是如此,但在这种情况下,它应该变暗一点。我已经设置了一个自定义的半透明选定背景来实现这个效果:UIView*background=[[[UIViewalloc]initWithFrame:self.bounds]au