问题标签 [designated-initializer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 当指定初始化程序的顺序与字段声明不对应时,clang 可以删除函数调用
这段代码:
当由 clang 编译时(我试过 3.7.0、3.7.1)会输出:
printInfo
删除了第二个call
调用noCall
...
使用-pedantic
选项它会产生警告,指定初始化器是 C99 的特性,但不是 C++,但仍然创建代码而无需第二次调用printInfo
.
它是已知的错误吗?
swift - 为什么 Swift 调用错误的初始化程序?
我有一个 UINavigationController 子类:
我将这个类实例化为:
这可以编译,但在运行时失败:
当我指定关键字navigationBarClass:和toolbarClass:时,我不明白为什么会调用init(nibName:bundle:)。
如果我从我的子类中删除所有初始化程序,它可以正常工作,这令人困惑,因为覆盖只调用 super 的方法/初始化程序应该是一个 noop。
第 87 行是声明类的地方。我尝试使用调试器介入,但我无法介入 UIKit 代码,只能介入我的代码。
万一这很重要,这是在 iOS 10 和 Swift 3 上。
c - 使用具有未命名嵌套数据类型的指定初始化程序
我想知道是否可以在结构的未命名数据成员中使用指定的初始化程序...(哎呀,一口,但是是的,这是做我想做的最干净的方法...)。如果我有:
我尝试编译,我得到错误:
我也尝试过使用.main..a64
,但我遇到了其他问题。这是 gcc 4.4。不幸的MainStruct
是,整个代码都使用了 ,因此命名联合将涉及更改数百个文件,所以我想避免这种情况。如果可能的话,我还想避免对 inside 的位置进行任何MainStruct
假设OtherStruct
。
c - 用 C 语言评估语句
如何用 C 语言评估这一行?struct 的一般声明与此声明不同。也可以像这样访问 C 中的[0].a
元素[0].b
?
ios - 从 initWithCoder 调用另一个 init 时指定的初始化程序警告:
我正在处理继承的代码库并尝试解决以下警告:
指定的初始化程序应该只在“super”上调用指定的初始化程序
指定的初始化程序缺少对超类的指定初始化程序的“超级”调用
代码是:
因此,据我所知,开发人员覆盖了超类initWithCoder:
(This is a UIView
)以允许加载自定义 UI,并initWithFrame:
使用自定义参数传入此参数以创建视图。
我看到有人说将[self initWithFrame:]
'更改initWithCoder:
为[super initWithFrame:]
确实可以解决警告,但是它也绕过了调用此处所需的功能以正确加载视图。
它按原样工作正常;我只是想减少所有可能的警告,所以我想知道是否可以进行更改来解决这个问题?
swift - super.init() 错误:必须调用超类“x”的指定初始化程序
我创建了一个从现有类继承的基本自定义类,如下所示:
如您所见,它给了我超类的指定初始化程序的基本错误。不过,我确实用过!超类只有一个init()
没有参数。
我该如何解决这个问题?
c - 在指示符以严格递增的方式初始化元素之后元素是否存在?
在这里,我初始化了这样的数组:
输出 :
在这里,我选择了数组索引7
作为 a a[7] = 4
,然后添加了一些元素。然后打印 index 的数组元素7
,8
并9
正确打印。
那么,它是正确的索引输出8
并且9
没有明确定义吗?为什么序列不从索引开始3
?
c - 什么是 C 中的指定初始化程序?
我知道这可能是一个基本问题。
我有一个任务要求我了解 C 中的指定初始化程序是什么以及用一个初始化变量意味着什么。
我不熟悉这个术语,也找不到任何确凿的定义。
什么是 C 中的指定初始化程序?
c - 如何更改结构中的指针变量?
所以我正在尝试实现一个链表,并且每个节点都有这个结构:
以前,我制作了一个游戏,其中航天器结构如下所示:
我可以做一个新的宇宙飞船
虽然使用节点,但变量是指针,它不允许我通过这样做来创建新节点
我究竟做错了什么?