草庐IT

super-jump

全部标签

c++ - 错误 : jump to label 'foo' crosses initialization of 'bar'

以下C++示例无法使用gcc或clang进行编译,但仅使用ICC生成警告,而使用MSVC则完全不生成任何警告:intmain(intargc,char*argv[]){if(argcg++:init.cpp:13:error:jumptolabel‘clean_up’init.cpp:4:error:fromhereinit.cpp:7:error:crossesinitializationof‘inti’clang++:init.cpp:4:9:error:cannotjumpfromthisgotostatementtoitslabelgotoclean_up;^init.cpp:

c++ - 是否有可能调用一个父类(super class)的构造函数,两个类远离 C++ 中的当前类

我有三个继承如下的类:Class_AClass_B:publicClass_AClass_C:publicClass_BClass_A包含一个构造函数:public:Class_A(constchar*name,intkind);Class_B不包含该构造函数。在Class_C中,我希望调用Class_A的构造函数。像这样的东西:Class_C(constchar*name,intkind):Class_A::Class_A(name,kind){}问题是我无法向Class_B添加中间构造函数,因为Class_B是生成的代码,每次我makeclean时都会重新生成。所以我无法对Clas

c++ - 从子类到父类(super class)再到子类的转换?

我的程序需要处理不同种类的“笔记”:NoteShort,NoteLong...不同种类的笔记应该以不同的方式显示在GUI中。我为这些笔记定义了一个基类,叫做NoteBase.我将这些笔记存储在XML中;我有一个从XML文件读取并将笔记数据存储在vectorlist中的类.然后我发现我无法获取它们自己的类型,因为它们已经转换为NoteBase*!虽然if(dynamic_cast(ptr)!=NULL){...}可能有效,它真的太丑了。实现函数取NoteShort*或NoteLong*作为参数不起作用。那么,有什么好的方法可以解决这个问题吗?更新:谢谢大家的回复。我认为这也不应该发生——

c++使用计算参数调用父类(super class)构造函数

可能super简单,但是有人可以告诉我如何使用在子类构造函数中计算的参数调用父类(superclass)构造函数吗?像这样:classA{A(inti,intj);};classB:A{B(inti);};B::B(inti){intcomplex_calculation_a=i*5;intcomplex_calculation_b=i+complex_calculation_a;A(complex_calculation_a,complex_calculation_b);}//编辑:我编辑了示例,以便父类(superclass)接受两个相互关联的参数 最佳

ios - 来自父类(super class)的 NSTimer 调用函数

假设我有一个用作计时器的类Timer。我希望所有其他可以像计时器一样工作的类都具有Timer类型的属性。问题是:Timer类使用了NSTimer属性,我不知道如何在其中关联来自外部Timer的函数。例如:类A有属性B,即Timer。scheduledTimerWithTimerInterval如何调用A的某个函数?这是计时器:importUIKitclassTimer{varinterval:NSTimeInterval!varcounting:Bool=falsevarnumberOfTouches:Int=0privatevartimer:NSTimer=NSTimer()init

ios - super.init() 无法在 swift3 中调用

调用super.init()时,显示错误:Mustcalladesignatedinitializerofthesuperclass'UICollectionViewCell'.当我在swift2.2版中使用它时,它确实运行良好。但是当我将Xcode版本升级到8.0后,我一直在使用Swift3.0版并且super.init()对我不起作用。 最佳答案 从swift3开始,他们已经删除了UICollectionViewCell的init()。所以你必须使用super.init(frame:CGRect)而不是普通的init()。

ios - UITableViewWrapperView 在 tvOS 上具有 super View 的前导和尾随边距

我正在tvOS上创建一个TableView。UITableViewWrapperView是UITableView的subview,它们之间有前导和尾随填充。我怎样才能删除这些填充?谢谢? 最佳答案 我通过以下设置解决了这个问题:tableView.contentInsetAdjustmentBehavior=.nevertableView.insetsContentViewsToSafeArea=falsetableView.insetsLayoutMarginsFromSafeArea=falsetableView.preserv

iphone - 使用 [super initWithStyle :UITableViewStyleGrouped] 初始化 UITableViewController

据我所知,这在AppleApi中是正确的,当使用initWithStyle方法初始化UITableViewController时,它应该返回对self.tableView中UITableView的引用。这是有道理的,因为一旦初始化,您就无法更改tableView的样式。但在我的情况下,这不会发生。-(id)initWithSomeData:(SomeData*)someData{self=[superinitWithStyle:UITableViewStyleGrouped];if(self){}NSLog(@"self?%@tableView?%@",self,self.tableV

iOS 编程 : 'super dealloc' crashes app

这是我第一次在这个网站上提问。作为一名业余开发人员,我总能在这个网站上找到我的问题的答案,但我找不到解决我当前问题的答案。在我的iPad应用程序中,我从rootView调用了一个新的UIViewController:DisplayTheMapViewController_iPad*root=[[DisplayTheMapViewController_iPadalloc]init];displayTheMapViewController=root;[[selfnavigationController]pushViewController:displayTheMapViewControll

objective-c - iOS – setEditing [super setEditing...] 和/或 [tableView setEditing...]

如果我想将tableView置于编辑模式。这样做的正确做法是什么?我似乎可以通过调用[supersetEditing:YESanimated:YES]将tableView置于编辑模式是否还需要调用[tableViewsetEditing:YESanimated:YES]? 最佳答案 我假设您是在UITableViewController的子类中调用它?在这种情况下,调用super就足够了,因为当ViewController本身开始编辑时,UITableViewController会自动将其TableView置于编辑模式。如果您有一个