草庐IT

zval_struct

全部标签

python - 如何*更改* struct_time 对象?

在python中处理时间和日期时,您会偶然发现time.struct_time对象:st=time.strptime("23.10.2012","%d.%m.%Y")printsttime.struct_time(tm_year=2012,tm_mon=10,tm_mday=23,tm_hour=0,tm_min=0,tm_sec=0,tm_wday=1,tm_yday=297,tm_isdst=-1)既然这个结构不支持项目分配(即你不能做类似st[1]+=1的事情),怎么可能增加,比如说,月份数。解决方案建议将这个time_struct转换成seconds并加上相应的秒数,但这看起来

内存对齐与内存开辟。结构体(struct),位段,枚举类型(enum),联合体(union)。

1.结构体内存对齐(1)结构体内存对齐规则a.第一个成员在与结构体变量偏移量为0的地址处b.其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处对齐数=编译器默认对齐数与该成员大小的较小值.vs中默认值为8(如果没有默认对齐数则默认对齐数为成员大小本身)c.结构体总大小为最大对齐数的整数倍d.如果嵌套了结构体的情况,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体大小就是所有最大对齐数(含嵌套结构体)的整数倍(2)举例:a.intmain(){ structS1 { charc1;//18对齐数为11字节 inti;//48对齐数为4要在偏移量4的整数倍处开辟浪费3个字节8字节 c

ios - AnyObject 与 Struct(任何)

我想为我的项目创建这样的方法:funcprint(obj:AnyObject){ifletrect=objas?CGRect{println(NSStringFromCGRect(rect))}elseifletsize=objas?CGSize{println(NSStringFromCGSize(size))}//...}但我不能,因为CGRect和CGSize是struct并且不符合AnyObject协议(protocol)。那么,关于如何做到这一点有什么想法吗? 最佳答案 使用Any而不是AnyObject。Swiftpro

swift - 为什么我需要在 Struct - Swift 中将可选值显式声明为 nil

引用自文档:Ifyourcustomtypehasastoredpropertythatislogicallyallowedtohave“novalue”—perhapsbecauseitsvaluecannotbesetduringinitialization,orbecauseitisallowedtohave“novalue”atsomelaterpoint—declarethepropertywithanoptionaltype.Propertiesofoptionaltypeareautomaticallyinitializedwithavalueofnil,indicati

swift - 将 UnsafeMutablePointer<Void> 类型转换为 UnsafeMutablePointer<#Struct type#>

我在Swift中创建了一个名为RGB的结构,非常简单:structPixelRGB{varr:CUnsignedChar=0varg:CUnsignedChar=0varb:CUnsignedChar=0init(red:CUnsignedChar,green:CUnsignedChar,blue:CUnsignedChar){r=redg=greenb=blue}}我有一个指针varimageData:UnsafeMutablePointer!.我想为这个指针分配一些空间,但是malloc返回UnsafeMutablePointer我不能像下面这样转换它:imageData=mall

ios - AlamofireObjectMapper/ObjectMapper是否支持struct类型映射

我正在使用AlamofireObjectMapper解析对我的对象的json响应。AlamofireObjectMapper是ObjectMapper的扩展.根据他们的文档,我的模型类必须符合Mappable协议(protocol)。例如:classForecast:Mappable{varday:String?vartemperature:Int?varconditions:String?requiredinit?(_map:Map){}funcmapping(map:Map){day为了符合Mappable协议(protocol),我的模型类必须为每个字段实现所需的初始化程序和映射

ios - 这段代码如何快速找到 Struct 的内存对齐大小?为什么需要二元运算?

我正在研究MetaliOSSwift示例,试图理解他们建议的三重缓冲实践。这显示在统一动画的演示中。据我所知,对齐内存只是从一个特定的增量开始,该增量是设备真正喜欢的某个字节数的倍数。我的困惑是这行代码//The256bytealignedsizeofouruniformstructureletalignedUniformsSize=(MemoryLayout.size&~0xFF)+0x100他们用它来查找Uniforms结构的大小和字节。我很困惑为什么这里有二进制操作我真的不确定它们是做什么的。如果有帮助,这个对齐的大小用于创建这样的缓冲区。我相当确定buffer会自动分配字节对齐

ios - swift 3 : How to convert struct to Parameters

我有一个结构如下structUserInfo{varuserId:IntvarfirstName:StringvarlastName:String}如何序列化UserInfo的实例以键入Parameters?varuser=UserInfo(userId:1,firstName:"John",lastName:"Skew")//ConvertusertoParametersforAlamofireAlamofire.request("https://httpbin.org/post",parameters:parameters) 最佳答案

Swift Struct 不符合协议(protocol) Equatable?

如何使结构符合协议(protocol)“Equatable”?我正在使用Xcode7.3.1structMyStruct{varid:Intvarvalue:Stringinit(id:Int,value:String){self.id=idself.value=value}vardescription:String{return"blablabla"}}当我使用“MyStruct”时,Xcode显示错误:MyStructdoesnotconformtoprotocol"Equatable"你有没有让MyStruct符合协议(protocol)的想法? 最佳

struct - 无法在 Swift 中分配给 'X' 中的 'Y'

我有一本包含Structs的字典。当我循环遍历dictionary时,我试图分配struct的值。Swift告诉我无法分配给“blockStatus”中的“isRunning”。我无法在文档中找到任何关于dictionaries或structs的特殊不变性的内容。直接从Playground上:importCocoastructBlockStatus{varisRunning=falsevartimeGapForNextRun=UInt32(0)varcurrentInterval=UInt32(0)}varstatuses=["block1":BlockStatus(),"block2