E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
ObjC
440.能否向编译后得到的类中增加实例变量?能否向运行时创建的类中添加实例变量?为什么?(面试点: 不能向编译后得到的类中增加实例变量; 能向运行时创建的类中添加实例变量; 1.因为编译后的类已...
因为编译后的类已经注册在runtime中,类结构体中的
objc
_ivar_list实例变量的链表和instance_size实例变量的内存大小已经确定,同时runtime会调用class_setIvarLayout
枫叶1234
·
2024-01-12 17:16
objc
_getClass/object_getClass/class
objc
_getClass
OBJC
_EXPORTClass_Nullable
objc
_getClass(constchar*_Nonnullname)
OBJC
_AVAILABLE(10.0,2.0,9.0,1.0,2.0
_一叶孤帆
·
2024-01-12 08:24
iOS底层原理总结 - 探寻Class的本质
Class的本质我们知道不管是类对象还是元类对象,类型都是Class,class和mete-class的底层都是
objc
_class结构体的指针,内存中就是结构体,本章来探寻Class的本质。
Dream_88
·
2024-01-10 17:05
iOS SDK~ 打包framework、开发与调试
framework、开发与调试iOS项目中SDK的开发与调试iOS中的armv7,armv7s,arm64,i386,x86_64都是什么Undefinedsymbolsforarchitecturex86_64:"
OBJC
_CLASS
00after
·
2024-01-09 19:35
UIBackgroundTaskIdentifier
language=
objc
張小明
·
2024-01-09 15:26
讲一下atomic的实现机制;为什么不能保证绝对的线程安全(最好可以结合场景来说)?
机制id
objc
_getProperty(idself,SEL_cmd,ptrdiff_toffset,BOOLatomic){if(offset==0){returnobject_getClass(self
natewang
·
2024-01-09 15:29
IOS 静态库使用分类导致无法找到问题
最受欢迎的方法是在OtherLinkerFlags中添加"-
ObjC
",这个标识告诉编译器“
天青Se等烟雨
·
2024-01-09 10:03
fishhook 支持ARC的18个函数初步探究
测试代码://.m文件staticid(*origin_
objc
_autorelease)(id);id
传说中的汽水枪
·
2024-01-08 21:54
在可执行文件中追加资源文件(C语言)
将资源文件转换成二进制文件想要将资源文件追加到可执行文件中,首先需要用
objc
opy命令将资源文件转换成二进制文件。
crazyskady
·
2024-01-08 09:02
C语言
C语言
objc
_msgSend执行流程
oc对象(包括类对象和实例对象)调用方法,主要有3个步骤,分别是消息发送,动态方法解析,消息转发1.消息发送消息发送2.动态方法解析动态方法解析说明其中YMPerson类的.h文件中声明一个-run方法,但.m文件没有进行方法的实现。如果直接调用YMPerson实例对象的run方法,会报找不到方法的崩溃。但在.m实现了+resolveInstanceMethod,并在其中动态添加了方法之后,实例对
xxxxxxxxx_ios
·
2024-01-08 01:32
Runtime-LLVM的中间代码
NSInvocation*)anInvocation{[superforwardInvocation:anInvocation];inta=10;test(a);}查看super的底层调用什么我们转成c++看到是调用的
objc
_msgSend2
越天高
·
2024-01-07 22:19
整理内核编译流程:uImage/zImage/Image/vmlinx之间关系
vmlinux通过
objc
opy格式化转换为Image2、rch/arm/boot/compressedvmlinux文件和Image之间关系?
高高的博客
·
2024-01-07 18:52
arm开发
linux
运维
swift3升级到swift4 填坑
@
objc
swift3使用#selector指定的方法,只有当方法权限为private时需要加@
objc
修饰符,现在Swift4.0全都要加@
objc
修饰符自定义的protocol协议中,有optional
墨守青城
·
2024-01-07 15:00
拾陆:AutoreleasePool实现原理
的RunLoopObserver,分别监听了runloop的①.进入(Entry)、②.BeforeWaiting(准备进入休眠)和Exit(即将退出Loop)进入(Entry):监听到进入后会调用_
objc
_autoreleasePoolPush
FY_Chao
·
2024-01-06 16:42
iOS底层探索之类的加载(二): realizeClassWithoutSwift分析
1.回顾在上篇博文中,已经从dyld到_
objc
_init再到read_images整个流程串联起来了,最后定位到了类的初始化是在realizeClassWithoutSwift中,本篇博文将深入分析类的加载
俊而不逊
·
2024-01-06 06:06
类结构探究(三)-- cache分析
之前我们已经探究了bits的结构,本文将对类的一个重要成员--cache,从源码
objc
4-7.8.1层面进行分析。
iOSer_jia
·
2024-01-05 14:03
说一下对 class_rw_t 的理解?
ObjC
类中的属性、方法还有遵循的协议等信息都保存在class_rw_t中://可读可写structclass_rw_t{//BewarnedthatSymbolicationknowsthelayoutofthisstructure.uint32
EmulatingStep
·
2024-01-05 14:59
python2.7安装tensorflow因为grpcio报错
python2.7中安装tensorflow的时候,在自动安装grpcio包的时候,出现了一个错误:cc1:warning:commandlineoption‘-std=c++11’isvalidforC++/
ObjC
薛钦亮
·
2024-01-05 10:43
python从入门到入土
系统配置的大小坑
tensorflow
python
人工智能
Runtime
原文链接首先,为什么说
ObjC
是动态语言我们看下苹果官方文档对runtime的定义TheObjective-CruntimeisaruntimelibrarythatprovidessupportforthedynamicpropertiesoftheObjective-Clanguage
CB7D
·
2024-01-05 09:59
【ES6语法】解构赋值及其应用场景举例
letobj={a:{b:{c:666}}}//从对象中拿到clet{a:{b:{c}}}=
objc
onsole.log(c)//666//改变属性名let{a:{b:{c:alias}}}=
objc
onsole.log
DayHeart
·
2024-01-05 07:05
ES6语法
html
vue
前端
es6
UITextField 禁用复制粘贴功能
方法一(禁用所有输入框功能按钮):[
objc
]viewplaincopy-(BOOL)canPerformAction:(SEL)actionwithSender:(id)sender{UIMenuController
NYH1006
·
2024-01-05 07:18
iOS开发笔记
iOS知识点
对象与isa
首先了解一下clang,Clang是⼀个由Apple主导编写,基于LLVM的C/C++/Objective-C编译器终端执行如下命令clang-rewrite-
objc
LGPerson.m-oLGPerson.cpp
miaohy
·
2024-01-05 02:08
Python(一)—— 初识Python与Python数据基础
适合的领域Web网站和各种网络服务系统工具和脚本作为“胶水”语言把其他语言开发的模块包装起来方便使用Python不适合的领域贴近硬件的代码(首选C语言)移动开发:iOS/Android有各自的开发语言(
ObjC
永恒之心——奇点
·
2024-01-04 22:39
Python学习
iOS - symbol(s) not found for architecture arm64解决办法
遇到报错symbol(s)notfoundforarchitecturearm64时可以按以下内容逐一排除:1.未导入框架2.库路径头文件路径不对删除3.OtherLinkerFlags改为-lz或-
ObjC
4
爪爪123
·
2024-01-04 20:10
将Objective-C代码转换为C\C++代码
xcrun-sdkiphoneosclang-archarm64-rewrite-
objc
OC源文件-o输出的CPP文件
zhongli_007
·
2024-01-04 05:03
Xcode导入runtime框架函数参数没有提示或Too many arguments to function call, expected 0, have 2错误
首先说明下,在Xcode6之前运用
objc
_msgSend,是有参数提示的。但是从Xcode6之后,苹果不推荐我们使用runtime,所以就取消了参数提示功能。估计是不想让我们过多的了解底层。
月沉眠love
·
2024-01-04 04:42
atomic
atomic是property的修饰词,原子属性,@property(atomic)intage;编译器会自动生成getter/setter,最终会调用
objc
_setproperty和
objc
_getProperty
一个栗
·
2024-01-03 21:41
iOS将oc的.m文件编译成C++的.cpp文件
这样可以方便我们窥探一些本质的东西比如要将我的工程BlockTest的main.m转换成.cpp,操作如下1:打开终端cd自己的工程文件2:终端输入:clang-xobjective-c-rewrite-
objc
-isysroot
蜡笔小新_65b7
·
2024-01-03 21:37
Runtime---
objc
_msgSend执行流程
image-20210506163157805image-20210506163224118image-20210506163239920image-20210506163252297image-20210506163309914image-20210506163328804image-20210506163351992OC方法调用的本质:消息发送机制-msg_Send.OC方法调用的本质就是给对
蒋斌文
·
2024-01-03 19:48
4.runtime的使用
typedefstruct
objc
_selector*SEL;IMP:指向方法实现开始的指针函数有2个参数,第一
你weixiao的时候很美
·
2024-01-03 15:17
跨语言调用
一、Objective-COC调用Swift:创建桥接文件使用@
objc
Members修饰的swift类可以被OC使用@
objc
MembersclassSwiftExample:NSObject{@
objc
funcOC_Call_Swift
Kevin写代码
·
2024-01-03 09:39
ios
swift
c++
c#
iOS Swift给uiview添加tap点击事件
lettap=UITapGestureRecognizer(target:self,action:#selector(tap(r:)))clickView.addGestureRecognizer(tap)@
objc
functap
Lee坚武
·
2024-01-03 05:39
iOS开发 生命周期
一、A->B2021-03-0421:24:50.055729+0800
Objc
Go[1155:21068]B-----[BViewControllerloadView]2021-03-0421:24:
喜剧收尾_XWX
·
2024-01-03 04:53
怎样使用performSelector传入3个以上参数,其中一个为结构体。
NSValue*value=[NSValuevalueWithBytes:&testS
objC
Type:@encode(testStrout)];
natewang
·
2024-01-01 23:55
Visual Studio Code设置为代码风格为 Google C++ Style
VisualStudioCode设置为代码风格为GoogleC++Style谷歌规范C++voidf(){std::cout前添加空格SpacesInAngles:false#在容器(
ObjC
和JavaScript
theRavensea
·
2023-12-31 16:31
vscode
c++
ide
【转】iOS马甲包制作+OC、Swift垃圾代码生成脚本
ios审核难度加大传送门:代码是用python写的,包括了
objc
和swift两套处理。
Zszen
·
2023-12-31 14:56
Swift4.0 学习笔记 第二十三节: 运行时加载属性列表
//importUIKit@
objc
MembersclassPerson:NSObject{varname:String?//基本数据类型,在OC中没有可选,如果定义成可选,运行时同样获取不到,使
爲妳鎻愛
·
2023-12-31 03:34
Swift知识
运行时加载属性列表
_lookUpImpOrForward慢速方法查找
前言在《IOS底层原理之Runimte运行时&方法的本质》一文中已经分析了
objc
_msgSend查找缓存(cache)的流程,也就是
objc
_msgSend的快速查找流程,当cache中找不到imp的时候
冼同学
·
2023-12-30 22:12
分类随笔
但是我们可以通过
objc
_getAssociatedObject\
objc
_setAssociatedObject的方式来为UIButton这样的类添加属性。
羞涩的老湿鸡
·
2023-12-30 14:26
iOS 类的结构分析
typedefstruct
objc
_class*Classstruct
objc
_class:
objc
_object{//ClassISA;Classsuperclass;cache_tcache;//formerlycachepointerandvtableclass_data_bits_tbits
xxxxxxxx_123
·
2023-12-30 03:36
block 源码分析 底层原理
封装了函数调用以及调用环境的OC对象block将main.m文件转换成C++文件,当前文件夹下xcrun-sdkiphoneosclang-archarm64-rewrite-
objc
main.m-omain.cpp
咖啡豆8888
·
2023-12-30 02:58
iOS Runtime学习(二) -- Runtime执行顺序
来支撑和实现的,而Runtime是一套C语言的API,它封装了很多动态性相关的函数我们平时编写的OC代码,其实底层都是将代码转换成了RuntimeAPI来进行调用二、OC的消息机制OC的方法调用其实都是转成了
objc
_msgSend
Q海龙
·
2023-12-30 01:12
linker command failed with exit code 1
一、没有定义的类参与编译错误如下,未定义的People没有参与ViewController的编译Undefinedsymbolsforarchitecturex86_64:"_
OBJC
_CLASS_$_
永永不止步
·
2023-12-29 23:51
gem5学习(7):内存系统中创建 SimObjects--Creating SimObjects in the memory system
Portinterface1、主设备发送请求时从设备忙2、从设备发送响应时主设备忙四、Simplememoryobjectexample1、DeclaretheSimObject2、DefinetheSimpleMem
objc
lass3
zhenz0729
·
2023-12-29 17:21
gem5学习
ubuntu
linux
泛型知识点总结
3.如果在创建自定义泛型类的对象时,没有指名泛型参数类型,那么泛型将被擦除,泛型对应的类型均按照Object处理,但不等价于
Objc
et。4.泛型的指定中必须使用引
橡皮泥ovo
·
2023-12-29 15:46
JAVA
java
react ant upload上传请求参数变成了 file:[object object]
文件对象需要取里面的一层,即originFile
Objc
onstformData=newFormData();formData.append("file",file.originFileObj||file
南城夏季
·
2023-12-29 14:46
业务
问题
react
react.js
前端
javascript
iOS16 输入框弹出键盘崩溃
新建一个UIWindow的category:+(void)load{staticdispatch_once_tonceToken;dispatch_once(&onceToken,^{Classclass=
objc
_getClass
Jux2020
·
2023-12-29 00:22
IOS底层(二) Class的本质
@[TOC](IOSClass的本质)Class的本质我们知道不管是类对象还是元类对象,类型都是Class,class和mete-class的底层都是
objc
_class结构体的指针,内存中就是结构体,
孔雨露
·
2023-12-28 01:14
八、消息流程之慢速查找
在Object-C中调方法在底层就是调
objc
_msgSend进行发送消息,消息发送时先在Class的cache中查找imp,这一步为快速查找,在cache中没有找到,就会在bits中查找,这一步为慢速查找
Mlqq
·
2023-12-27 08:14
c++学习笔记(14)-类的对象占用内存
1.1、空类的SizeclassCar{};voidmain(){intsize=0;Car
objC
ar;size=sizeof(
objC
ar);printf("%s%d/r",
开始沸腾了
·
2023-12-27 04:14
C++笔记
c++
学习
笔记
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他