• 2024-06-18Objective-C — static关键字用法详解
    Static的作用在Objective-C中,static关键字有几种不同的用途,主要用于修饰全局变量、局部变量、修饰静态函数1、static修饰的静态全局变量代码#import<Foundation/Foundation.h>//由于静态变量作用域仅限于声明它的文件,所以访问和设置可以通过以下方法来访问//通过setGlob
  • 2024-06-10Objective-C的初始化方法中,应该如何读写属性
    除非有明确的原因需要使用setter,getter,否则总是应该直接访问,也就是直接使用实例变量(也称为iVar)来读写数据理由:避免子类覆盖setter方法的影响:若在初始化方法中使用setter方法,使用此方法实例化子类,可能会调用子类重写的setter方法,这可能会导致意想不到的行为
  • 2024-06-09Objective-C 学习笔记 | 基础
    Objective-C学习笔记|基础参考书:《Objective-C编程(第2版)》第1部分入门Objective-C语言是以C语言为基础的,但增加了对面向对象编程的支持。Objective-C语言是用来开发在苹果iOS以及OSX操作系统上运行的应用的编程语言。第2部分如何编程该部分讲解了C语言编程的必
  • 2024-05-10比较 Swift 中的闭包和 Objective-C 中的 Block
    在iOS开发中,闭包(Swift)和Block(Objective-C)都是用于实现匿名函数的重要概念。它们在很多方面都有相似之处,但也存在一些显著的差异。本文将从应用和原理两个层面对Swift中的闭包和Objective-C中的Block进行比较和分析。1.应用层面的比较1.1相似之处功能性相同:闭包和
  • 2024-05-10理解 Swift 中闭包与 Objective-C 中 Block 的外部变量捕获机制
    在Swift中的闭包和Objective-C中的Block都支持捕获外部变量,使得在闭包或Block内部可以访问外部作用域的变量。本文将深入探讨它们在捕获外部变量方面的机制和区别。1.Swift中闭包的外部变量捕获机制在Swift中,闭包捕获外部变量时会根据情况选择采用值捕获(Captureby
  • 2024-03-24objective-c之Class底层结构探索
    isa走位图在讲OC->Class底层类结构之前,先看下下面这张图:通过isa走位图得出的结论是:1,类,父类,元类都包含了isa,superclass2,对象isa指向类对象,类对象的isa指向了元类,元类的isa指向了根元类,根元类isa指向自己3,类的superclass指向父类,父类的superclass指向的根类,根
  • 2024-02-02【教程】Objective-C 性能监控
     1、内存监控CPU内存监控克魔助手提供了分析内存占用、查看CPU实时活动数据以及追踪特定应用程序的功能,让开发者可以更好地了解应用程序的运行情况。以下是一些示例截图: ​    ​   ​  同样,克魔助手还提供了内存、GPU性能监控、网络监控等功
  • 2024-01-28Objective-C杂谈【1】
    ObjC(Objective-C)进入人们的视野,主要源自MacOSX的Cocoa。人们即使是开发着更多关注的也是Cocoa靓丽的外表,对支撑起Cocoa的ObjC确一直缺乏深入了解。ObjC给人深刻印象的无异于它与传统基于“.”的面向对象语言语法的完全不同的调用或者消息传递语法。例:[objectdoSomethingWithPa
  • 2024-01-28无涯教程-Swift - 简介
    Swift编程语言,支持多编程范式和编译式,用来撰写基于macOS/OSX、iOS、iPadOS、watchOS和tvOS的软件。苹果公司于2014年在苹果开发者年会(WWDC)发布了Swift编程语言。从设计上苹果公司让Swift与Objective-C共存在苹果公司的操作系统上。2010年7月,苹果开发者工具部门总监克里斯·
  • 2023-12-27Objective-C(02)|类的定义和对象初始化(初阶)
    书接前文,奇怪的语法体验继续!对象的初始化和Java的new运算符不同,OC的对象初始化使用初始化方法(initializer),个人觉得比new运算符更酷,这方法名和C语言中动态分配内存空间的malloc很像。实例的生成:[ClassNamealloc]Cocoa中某个类的对象的生成:[[ClassNamealloc]init]通常嵌
  • 2023-12-262023最新高级难度Objective-C面试题,包含答案。刷题必备!记录一下。
    好记性不如烂笔头内容来自面试宝典-高级难度Objective-C面试题合集问:请解释一下Objective-C中的“MethodSwizzling”(方法混淆)是什么?它的原理和使用场景是什么?MethodSwizzling是Objective-C中的一个特性,它允许你在一个运行时环境中交换两个方法的实现。这意味着你可以替
  • 2023-12-252023最新中级难度Objective-C面试题,包含答案。刷题必备!记录一下。
    好记性不如烂笔头内容来自面试宝典-中级难度Objective-C面试题合集问:请解释一下Objective-C中的属性(property)和实例变量(instancevariable)之间的关系。在Objective-C中,属性(property)和实例变量(instancevariable,简称ivar)都是类的组成部分,它们都用来存储对象的状态。然而,它
  • 2023-12-252023最新初级难度Objective-C面试题,包含答案。刷题必备!记录一下。
    好记性不如烂笔头内容来自面试宝典-初级难度Objective-C面试题合集问:Objective-C和C++有什么区别?Objective-C和C++都是编程语言,它们都是从C语言演化而来的,并且都支持面向对象的特性。然而,尽管它们有共同之处,但两者在设计和使用上还是存在一些显著的区别:动态性:O
  • 2023-12-15《convex optimization》——Stanford University open class
    202312151.Introductionmathematicaloptimizationleast-squaresandlinearprogramingconvexoptimizationexapmlecoursegoalsandtopicsnonlinearoptimizationbriefhistoryofconvexoptimizationmathmeticaloptimizationoptimizationproblemminimize
  • 2023-12-01使用ASIRequest库进行Objective-C网络爬虫示例
    使用ASIRequest库进行Objective-C网络爬虫示例在Objective-C中,ASIHTTPRequest是一个非常受欢迎的库,用于处理HTTP请求。它可用于下载网页内容,处理API请求,甚至进行复杂的网络交互。下面是一个简单的示例,展示了如何使用ASIHTTPRequest库来爬取网页代码。首先,你需要在你的项目中导入ASI
  • 2023-11-10在Objective-C中,我如何测试对象的类型?
    内容来自DOChttps://q.houxu6.top/?s=在Objective-C中,我如何测试对象的类型?我需要测试对象是否是NSString或UIImageView类型。我该如何实现?是否有一种类似于“isoftype”的方法可以使用?如果你的对象是myObject,并且你想测试它是否为NSString类型,代码如下:[myObjecti
  • 2023-11-08管理类iOS软件开发:常见代码与最佳实践
    随着智能手机的日益普及,iOS软件开发成为了当今的热门领域,在开发过程中,管理类代码对于确保应用程序的稳定性和性能至关重要,本文将介绍管理类iOS软件开发中常见的代码及最佳实践,帮助您更好地应对实际开发中的挑战。一、iOS软件开发概述iOS是由苹果公司开发的移动操作系统,广泛应用于iP
  • 2023-10-22Objective-C内存管理机制概述
    Objective-C管理的是分配在堆上的NSObject对象的内存,对其他非对象的C语言数据类型(int、char、float、double、struct、enum等)无效。有以下3种方式:手工引用计数和自动释放池(MRC,ManualReferenceCounting),又称手动保留释放(MRR,ManualRetain-Release)垃圾收集(GC,GarbageCollecti
  • 2023-08-22Objective-C语法之动态类型(isKindOfClass, isMemberOfClass,id)等
    对象在运行时获取其类型的能力称为内省。内省可以有多种方法实现。判断对象类型-(BOOL)isKindOfClass:classObj判断是否是这个类或者这个类的子类的实例/ 判断是否是这个类的实例-(BOOL)isMemberOfClass:classObj 我们试试这两个方法的使用。1、新建Person类继承NSObject,新
  • 2023-08-11Objective-C 语法快速参考(附:Learning_Objective-C_A_Primer_中文版)
    关联:1.http://cocoadevcentral.com/d/learn_objectivec/2.http://www.otierney.net/objective-c.html.zh-tw.big53.http://www.geekylemon.com/xcodetutorials.htm4.http://www.cocoachina.com/b/ 大部分有一点其他平台开发基础的初学者看到XCode,第一感想是磨拳擦
  • 2023-07-31从 C++到 Objective-C ----2
    从C++到Objective-C(7):继承简单继承Objective-C也有继承的概念,但是不能多重继承。不过,它也有别的途径实现类似多重继承的机制,这个我们后面会讲到。C++Objective-CclassFoo:publicBar,{}@interfaceFoo:Bar//单继承//如果要同时“继承”Wiz,需要使用
  • 2023-07-31从 C++ 到Objective-C
    从C++到Objective-C(1):前言DevBean 日期:2011年03月18日Objective-C可以算作Apple平台上“唯一的”开发语言。很多Objective-C的教程往往直接从Objective-C开始讲起。不过,在我看来,这样做有时候是不合适的。很多程序员往往已经掌握了另外一种开发语言,如果对一门新
  • 2023-07-12Objective C无法访问Swift结构体struct
    letParseApplicationId="xxx"letParseClientKey="xxx"letAppGreenColor=UIColor(red:0.2,green:0.7,blue:0.3alpha:1.0)@objcclassConstant:NSObject{privateinit(){}classfuncparseApplicationId()->String
  • 2023-06-22Objective C数组的内存管理
    在addObj后及时释放所添加的objectNSMutableArray*array=[NSMutableArraynew];NSString*str=[[NSStringalloc]initWithFormat:@"a"];[arrayaddObject:str];[strrelease];[arrayrelease];也就是说当你吧str放进array的时候,相当于创建了一个str的副本,而这个副本
  • 2023-06-22Objective C 属性
    为每一个变量实现其访问器,繁琐,@property可以替我们减轻工作。 是否暴露读写接口readonly将只生成getter方法而不生成setter方法(getter方法没有get前缀)。readwrite默认属性,将生成不带额外参数的getter和setter方法(setter方法只有一个参数)。  线程安全atomic对于对象的