转载:http://www.cnblogs.com/Anker/p/3744127.html1、前言
今天在看代码中遇到一个结构中包含char
data[0],第一次见到时感觉很奇怪,数组的长度怎么可以为零呢?于是上网搜索一下这样的用法的目的,发现在linux内核中,结构体中经常用到 data...
分类:
编程语言 时间:
2014-05-26 21:09:27
阅读次数:
374
这两天在看结构体,一直在琢磨结构体的存储空间分配的问题,琢磨了半天总算明白了。和大家分享一下,希望能有所帮助。相信大家都知道结构体里元素存储要对齐吧,话虽是没错,只是这个“对齐”里面包含了很多微妙的东西。首先详细的给出结构体内存存储空间分配的原则吧:编译器按照成员列表顺序一个接一个地给每个成员分配内...
分类:
编程语言 时间:
2014-05-26 16:37:20
阅读次数:
327
在类内部定义的函数默认为inline函数后面加const,不能改变操作对象的数据成员,const必须在定义和声明的时候都存在,否则会出现编译错误类和结构体,还有枚举是怎么实现的,内存是如何存储的,这是个大问题?因为只有当类定义体完成后才能定义类,因此类不能具有自身类型的数据与成员,然而只要类名一出现...
分类:
编程语言 时间:
2014-05-26 15:18:22
阅读次数:
281
* weak(assign) :代理\UI控件* strong(retain)
:其他对象(除代理\UI控件\字符串以外的对象)* copy :字符串,block* assign
:非对象类型(基本数据类型int\float\BOOL\枚举\结构体)-UI控件也不一定是用weak的,要根据具体情况具...
分类:
其他好文 时间:
2014-05-26 13:11:02
阅读次数:
236
1、在OC中,不允许直接修改“对象”的“结构体属性”的“成员变量”,但是允许修改“对象”的“结构体属性”修改结构体属性的成员变量方法如下:1>
使用临时变量记录对象的结构体属性2> 修改临时变量的属性3> 将临时变量重新赋值给对象的结构体属性2. 在程序开发中需要避免出现魔法数字(Magic
Num...
分类:
移动开发 时间:
2014-05-23 04:23:45
阅读次数:
363
这些属性,内部都是结构体:CGRect CGPoint
CGFloat背景知识:所有的控件都是view的子类,屏幕就是一个大的view;每个view都有个viewController,它是view的管家,每个view对应着一个viewController,来管理view。frame
& bounds...
分类:
移动开发 时间:
2014-05-23 04:18:38
阅读次数:
338
iOS开发UI基础—transframe属性(形变)1.
transform属性在OC中,通过transform属性可以修改对象的平移、缩放比例和旋转角度常用的创建transform结构体方法分两大类(1)
创建“基于控件初始位置”的形变CGAffineTransformMakeTranslatio...
分类:
移动开发 时间:
2014-05-23 04:09:30
阅读次数:
422
1、典型的Point结构体 1 struct point { 2 double x, y; 3
point(double _x = 0, double _y = 0): x(_x), y(_y) { 4 } 5 void input() { 6
sca...
分类:
其他好文 时间:
2014-05-23 03:40:15
阅读次数:
362
背景
C89标准规定初始化语句的元素以固定顺序出现,该顺序即待初始化数组或结构体元素的定义顺序。 C99标准新增指定初始化(Designated
Initializer),即可按照任意顺序对数组某些元素或结构体某些成员进行选择性初始化,只需指明它们所对应的数组下标或结构体成员名。GNU C将其作.....
分类:
其他好文 时间:
2014-05-21 21:53:54
阅读次数:
448
在C++中struct类型(结构体)属于类类型。 class student {} 与
strcut student
{}是一样的,唯一的区别就是class中如果未对成员进行public、private或protected等访问限定声明则默认为private的,而struct中则默认为publ...
分类:
编程语言 时间:
2014-05-21 17:55:05
阅读次数:
231