iOS学习笔记之ARC内存管理 写在前面 ARC(Automatic Reference Counting),自动引用计数,是iOS中采用的一种内存管理方式. 指针变量与对象所有权 指针变量暗含了对其所指向对象的所有权 当某个方法(或函数)有一个指向某个对象的局部变量时,可以称该方法(或函数)拥有该变量所指向的对象,如: int main(int argc, const char * argv[]) { @autoreleasepool { // insert code here... NSSt…
学习Windows程序设计也有一些时间了,为了记录自己的学习成果,以便以后查看,我希望自己能够坚持写下一系列的学习心得,对自己学习的内容进行总结,同时与大家交流.因为刚学习所以可能有的地方写不不正确,希望大家能够指出. 在学习了一定的Windows API后我决定进入到一些基础的学习,希望能够学习一些原理性的知识,能够做到知其然的同时知其所以然.为了达到这个目的,这段时间我学习了一些计算机的基础知识,在这写下这篇博客,总结一下. 在早期的16位8086CPU中我们使用段与段内的偏移偏移的方式寻址…
<Windows程序设计>(第五版)(美Charles Petzold著) #include<windows.h> LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,PSTR szCmdline,int iCmdShow) //第一个参数是实例句柄,在Windows程序中,句柄就是一个数值,程序里用它来标志…
内存管理 内存管理一直是一个不易处理的问题.开发人员必须考虑分配回收的方式和时机,针对堆和栈做不同的优化处理,等等.内存管理的核心是动态分配的对象必须保证在使用完成后有效地释放内存,即管理对象的生命周期.因为C++是一个较为底层的语言,其设计上不包括不论什么智能管理内存的机制.一个对象在使用完成后必须被回收.然而在复杂的程序中.对象全部权在不同程序片段间传递或共享,使得确定回收的时机十分困难,因此内存管理成为了程序猿十分头疼的问题. 还有一方面,过于零散的对象分配回收可能导致堆中的内存碎片化,减…
参考资料 本文参考:<深入理解Java虚拟机>作者 周志明 知识产权归作者所有 走近java java组成部分:java语言.各平台虚拟机.Class文件结构.java api 类库.第三方类库 Jre包括jvm和api java 未来展望:模块化.混合语言.多核并行.丰富语法.64位虚拟机 自动内存管理机制 PC程序计数器 PC:程序计数器,用于记录和控制下一条需要执行的字节码的位置,分支.循环.跳转.异常处理.线程恢复都需要依赖PC完成. PC 是每个线程私有的,如果执行的是java方法,…
菜单可能是Windows提供的统一用户界面中最重要的一种方式,菜单通常在标题栏的下一行显示,这一栏叫做菜单栏,菜单栏中的每一项称之为菜单项,菜单栏中的每一个菜单项在激活时会显现一个下拉菜单(也可以说是它的子菜单),下拉菜单中也可以有多个菜单项,每个菜单项又可以有子菜单,每个菜单项都有一个唯一的数字标示,称为菜单项的ID,但是有子菜单的菜单项没有ID.用户点击某项后,会产生一个WM_COMMAND消息发送到其父窗口,该消息中包含了这个菜单项的ID.菜单的创建可以通过可视化的方法创建,也可以通过编写…
Windows系统提供大量的控件供我们使用,但是系统提供的控件样式都是统一的,不管什么东西看久了自然会厌烦,为了使界面更加美观,添加一些新的东西我们需要自己绘制控件. 控件在默认情况下并不进行自绘,如果是在窗口中利用CreateWindow创建的话要在风格中加入一个对应的自绘风格,这个一般在MSDN中都可以查到比如按钮的自绘风格是BS_OWNERDRAW.列表框是 LBS_OWNERDRAWFIXED (列表项的高度一致).LBS_OWNERDRAWVARIABLE(列表项的高度可以不一致),如…
windows里的变量类型 1.简单重定义windows变量 BOOL (TRUE FALSE) INT UINT(32位,4字节) LONG DWORD(32位,4字节) lParam,wParam(32位,4字节) SHORT WORD(16位,2字节) LPSTR   LPCSTR(字符串指针,可写和只读)      char *和const char* 2.句柄类型 HINSTANCE of Windows ->HWND; HINSTANCE of Instance  ->HINSTA…
20145213<Java程序设计学习笔记>第六周学习总结 说在前面的话 上篇博客中娄老师指出我因为数据结构基础薄弱,才导致对第九章内容浅尝遏止地认知.在这里我还要自我批评一下,其实我事后没有及时反省,补充数据结构知识,抓紧时间掌握第九章内容,反其道而行现在要在没掌握第九章的情况下写自习第十章.第十一章的内容,简直误人子弟,一派胡言.我认罪,我有错.我深知即使点头如捣蒜,诚惶诚恐也于事无补,拿出干货才是硬道理.我会在下周二之前拿出对第九章内容理解博客.在写本周博客之前我拜访了一些数据结构学的好…
接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Author(models.Model): first_name = models.CharField(max_length=) last_name = models.CharField(max_length=) email = models.EmailField(blank=True ) 所有字段都默认bl…