1 外部变量到底是怎么回事?是在一个文件的所有@interface,@implements 块外声明的变量,那么声明时不使用extenal关键字,而在使用时使用?在其他文件里可以用这个文件里的这个外部变量?
2 协议的用途究竟是什么?如果一个类遵循某协议,是不是就不用在@interface里声明那些方法了?
3 autorelease,如果当时无法release,则可以像自动释放池发送autorelease消息,当执行到[pool drain]时其就会收到release消息,计数器-1,如果等于0则被回收。那是不是所有使用release的时候都可以替换为autorelease方案呢?应该是不行,因为你retain了好几次,但是只能autorelease一次。
4 使用alloc,new,copy,retain都需要release释放,放到集合时计数器+1,同时放入到自动释放池中,移出集合计数器-1。retain一次就要release一次,或者发送一个autorelease,让pool帮你发送release。字符串使用stringWithString创建也一样,计数器+1,并autorelease,所以使用时可以通过retain以免被释放。IPhone的那些UI组件好像也都是如此。
关于内存管理有个总结帖http://www.cocoachina.com/bbs/read.php?tid-12760-fpage-3.html
目前对于跟UI有关的内存问题还是没太搞清楚,比如尼玛这个为啥就不需要释放呢?
self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
// Override point for customization after application launch.
UIViewController *viewController1 = [[[FirstViewController alloc] initWithNibName:@"FirstViewController" bundle:nil] autorelease];
UIViewController *viewController2 = [[[SecondViewController alloc] initWithNibName:@"SecondViewController" bundle:nil] autorelease];
self.tabBarController = [[[UITabBarController alloc] init] autorelease];
self.tabBarController.viewControllers = [NSArray arrayWithObjects:viewController1, viewController2, nil];
self.window.rootViewController = self.tabBarController;
5 指针,间接访问数据项。
int *a 告诉编译器a是个指针
int b=10,a=&b,把b的指针赋值给a,而不是把b的值给a。指针就是指向那个值的一个东东(不准确地说法就是引用或者句柄,但实际上它们的关系是引用可以通过指针等方式实现),可以说指针是这个数据所在的地址,变量可以到这个地址去取数。
int x=*a,*表示从这个指针变量中取数,然后把这个数值赋给x。
其实折腾这么多步干了一件事 x=b=10。
但是如果地址对应的内容会变化,那么就可以每次通过*号取出不同的值,而不是把内容直接赋值给变量。
这东西都是针对于C语言说的,在OBC中,对象就是引用赋值的(也可以理解为指针)。比如A *a1=[[A alloc] init]; A *a2=a1,就是将a2也指向了a1对应的对象。但是这个对象的引用计数仍然不变,手工方式只有通过retain才能增加引用技术。
另一个例子:char c='C';
注意char *a=&c;
和char *a; a=&c;
以及
char *a=&c; *a='I';表示将字符‘I’赋值给了变量a指向的那个数据(通过指针找到了数据存放位置,然后把值替换了),此时c和a的值都是‘I’
对于结构体 struct A{ int a; }; 可以这样A->a=10; 、、
有时有的东西看起来像对象其实不是,就不能定义为指针变量,比如NSInteger
分享到:
相关推荐
深度集成 OBC+DCDC 拓扑方案 深度集成 OBC+DCDC 拓扑方案是指一种高效、可靠的电源解决方案,旨在满足现代工业和民用电子产品的电源需求。该方案的核心是 OBC(On-Board Charger)和 DCDC(DC-DC Converter)两个...
电动汽车车载充电机(OBC)和车载DC/DC电源是电动汽车电力系统中的核心组件,它们在电动汽车的运行中起着至关重要的作用。本文件详细介绍了这两种电源技术的方案,包括不同功率等级的OBC电路设计以及车载DC/DC转换器...
标题中的"obc.cpp.rar_2PG_C++_The Number_combinations_obc"暗示了这是一个关于C++编程的项目,具体涉及2阶段编程(2PG)和对象基础类(OBC),以及组合数学中关于数字组合的问题。描述中的"specific Due to the ...
车载充电器 (OBC)是插电式混合动力汽车和纯电动汽车中一个必不可少的系统。在本文中,我们讨论了车载充电的系统结构和可行拓扑,并为 OBC 推荐了合适的功率半导体选择。目录 摘要 目录 1 简介 2 车载充电概览 。 ...
碳化硅SiC MOSFET OBC应用技术 碳化硅SiC MOSFET OBC应用技术是指使用碳化硅(SiC)材料制成的MOSFET(Metal-Oxide-Semiconductor Field-Effect Transistor)在OBC(On-Board Charger)应用中的技术。下面将对该...
传统的解决方案中,OBC和DCDC通常作为独立的单元存在,这可能导致体积大、重量重、成本高以及效率低等问题。 深度集成OBC+DCDC的拓扑方案旨在解决这些问题。通过共享部分硬件资源,如功率开关元件、滤波电容和控制...
新能源6.6KW7KW 3.3KW 11KW车载充电机OBC开关电源设计方案 另有15KW ai默生 数字控制:电压电流环控制核心算法 PFC?LLC采用TMS320F28035芯片 3.3KW车载充电机开关电源设计方案资料数字控制单相PFC与全桥LLC 2、新能源...
为了进一步减小尺寸,研究转向了谐振或准谐振转换器,它们利用谐振网络实现软开关拓扑,显著降低了开关损耗,主要的热耗问题仅与导通损耗相关。 本论文深入分析了一种特定的谐振转换器——LLC拓扑结构。LLC转换器的...
新能源汽车车载双向OBC,PFC,LLC,V2G 双向 充电桩 电动汽车 车载充电机 充放电机 MATLAB仿真模型 : (1)基于V2G技术的双向AC DC、DC DC充放电机MATLAB仿真模型; (2)前级电路为双向AC DC单相PWM整流器,输入AC...
"电动汽车OBC与DCDC集成式产品研究.pdf" 本文研究了电动汽车OBC(On-Board Charger)与DCDC(DC-DC Converter)集成式产品的设计方案。该产品集成了车载充电机和DCDC变换器的功能,通过集成设计,能够对车辆整体...
再者,电磁兼容性(EMC)是一个不容忽视的问题,尤其是在处理高电压和大电流的OBC设计中。LLC谐振转换器的控制策略,如通过调整开关频率以优化滤波器设计,能有效降低EMI,确保OBC满足严格的EMC标准。 安全性也是...
OBC_TECS.sln
OBC_PFC_POWER_SCHEMATIC.PDF 本资源是一个关于PFC(Power Factor Correction,功率因数校正)电路的设计方案,主要应用在风扇解决方案中。该方案由安森美(ON Semiconductor)公司提供,解决方案工程中心的Stefan ...
在这个"swift源码circleview(从OBC源码转过来)"项目中,我们可以看到一个Objective-C的CircleView示例被转换成了Swift代码。CircleView可能是一个自定义的UI组件,它在屏幕上显示一个圆形视图,可能是用于按钮、仪表...
OBC_PFC_LLC
github代码地址:setupOnUbuntu部署区块链的OBC及hyperledger/fabric项目程序比较复杂,首先先启动vagrant下载一个virtualbox的镜像,之后在该box中安装docker,通过docker来编译项目。这样会导致两个问题:1、由于...
6.6kw obc pcb 两相交错图腾柱,pcb板