我正在运行时创建UIView的子类,并layoutSubviews为它提供我的方法实现.我需要做的一件重要事情就是表演super.layoutSubviews().在Objective-C中,我可以使用以下objc_msgSendSuper函数:
Class objectClass = object_getClass(object);
Class superclass = class_getSuperclass(objectClass);
struct objc_super superInfo;
superInfo.receiver = object;
superInfo.super_class = superclass;
typedef void *(*ObjCMsgSendSuperReturnVoid)(struct objc_super *, SEL);
ObjCMsgSendSuperReturnVoid sendMsgReturnVoid = (ObjCMsgSendSuperReturnVoid)objc_msgSendSuper;
sendMsgReturnVoid(&superInfo, @selector(layoutSubviews));
Run Code Online (Sandbox Code Playgroud)
但objc_msgSendSuper方法在Swift中不可用.我应该用什么来做同样的事情?
我写了一个程序来找到使用类型的最后一个Fibonacci数unsigned int.它是1836311903,但我认为最大值为unsigned intIS 65535.发生什么了?
while(true)
{
sequence[j] = sequence[j-1] + sequence[j-2];
if(sequence[j-1]>sequence[j]) break;
j++;
}
printf("%d", sequence[j-2]);
Run Code Online (Sandbox Code Playgroud)