[TwistedFate]OC面向对象

iOS BLE蓝牙开发数据传输协议详解 常用算法(AES加密 HMAC_hash PRF) 前言 这段时间参与了一款与蓝牙外设交互的项目, 以前没有涉及过数据传输方面的开发, 踩了不少坑, 同时也学到了很多东西. 此时, 项目也即将进入尾声, 有时间把这些记录一二. 本人才疏学浅, 如有错误,大佬轻喷. BLE4.0开发 这方面网上的Demo一大堆, 暂时不做太多的赘述, 只对坑点做一个摘要. 需求使然, 要对设备的接近远离有一个比较精确的计算, 使用的方案是对蓝牙的信号强度进行分析.... 阅读详情

1.OC的输出方法:

NSLog(@"这是OC的第一个工程");
// 默认输出换行

2.@符 是OC关键字的标志
3.C语言基本数据类型 :int float char
OC常用基本数据类型:NSInteger 整型 CGFloat 浮点型 NSString 字符型
4.定义一个字符串:

NSString *string = @"今天你吃了吗?";
// 如果有星* 就代表这是一个对象
// 格式化输出 占位符 只要是对象 就可以用%@来当占位符输出
NSLog(@"%@",string);
// 基本数据类型 用什么来当占位符
NSInteger number = 5;
NSLog(@"%ld",number);
CGFloat score = 10.5;
NSLog(@"%.2f",score);

4.创建对象 分两个过程
(1).分配内存空间(堆区开辟空间 需要管理的)
(2).对对象进行初始化

   Person *per = [Person alloc];
   // [per init];        // 对对象进行初始化
    // 连着写 创建一个对象
    Person *per1 = [[Person alloc] init];
    // new这个方法就相当于 开辟空间并初始化
//    Person *p1 = [Person new];
    // 调用sayHi方法
    [per1 sayHi];

5.// instancetype 表示返回一个对象类型
// void * 无类型指针 可以转化任何类型的指针
// id 表示一个对象类型 (可以声明一个对象使用)
6.重写初始化方法 重写的是父类的方法 一定要跟父类的方法名字一样 返回值一样 参数一样 只有方法的实现是不一样的
7.@public关键字 代表公开的意思

政府科技管理者如何提升科技成果转化项目进场交易的备案效率?.docx 政府科技管理者如何提升科技成果转化项目进场交易的备案效率? 立即下载

相关推荐

Metal 一、初识 Metal 及其语言规范

游戏开发者的新的技术平台,该技术能够为3D图像提高 10 倍的渲染性能。苹果2018年推出 Metal,在此之前一直使用OpenGL ES。1图形渲染;2高并发计算。苹果文档给出的 Metal 优化:CPU 低消耗、GPU 高利用、连续处理器并行、有效的资源利用Metal 官方文档。

irainsa的博客 1222

[TwistedFate]面向对象编程、类和对象、实例变量操作

1.Objective-C简称OC,扩充⾃C语⾔的⾯向对象编程语⾔。 是OS X和iOS操作系统的主要编程语⾔ 2.OC的输出方法NSLog,比C语言的printf多一个换行 3.@符 是OC关键字的标志 C语言基本数据类型 int float char OC常用基本数据类型 NSInteger 整型 CGFloat 浮点型 NSString

Do not just be a pragrammer 738

手把手教你用OpenCore在Dell Optiplex 3060上安装黑苹果(含ALC255声卡修复)

本文提供了一份详尽的指南,教你如何在Dell Optiplex 3060微型台式机上安装黑苹果系统。文章重点解决了使用OpenCore引导时的核心配置,特别是针对Intel UHD 630核显的驱动优化和Realtek ALC255声卡的修复方案,旨在帮助用户打造一个稳定可用的macOS工作站。

weixin_29275257的博客 789

[TwistedFate]多线程编程NSOperation

常用开启多线程的方法 NSOperation 封装一下GCD的方法 提供OC的语法来使用GCD 2.GCD 官推 可以最大化的发挥多核CPU 是C语言的函数 NSOperation 是一个抽象类 NSBlockOperation NSInvocationOperation 线程队列 1.串行队列 主线程相当于一个串行队列 队列中的任务 需要一个执行完毕后 再执行下一个 2.并行队列 队

Do not just be a pragrammer 432

NCBI|叶绿体基因组数据上传

叶绿体基因组NCBI上传 小编最近在NCBI上传了好几次数据…想着可以把具体的上传步骤写下来,供大家参考。以下是叶绿体基因组的上传示例,大家可以瞅瞅 图片 准备工作 1.登录NCBI官网:https://www.ncbi.nlm.nih.gov/, 依次点击“sign in to NCBI”——“See more 3rd party sign in options”——搜索“Microsoft live.com”。 ”sign in to NCBI“ ”See more 3rd party sign i

weifanbio的博客 3903

晶振(晶体振荡器)测试方法详解

晶振测试方法分为无源和有源两种类型。无源晶振(两脚)需用示波器测试波形,重点关注正弦波形状、200mV-1.5Vpp幅值和频率精度;有源晶振(四脚)通电后直接输出方波。测试要点包括:示波器使用10X探头、AC耦合,带宽需5倍于晶振频率;万用表可初筛短路/开路;替换法是工程最有效方法。常见故障排查顺序:供电→复位→焊接→型号→负载电容→波形观察→更换晶振→MCU配置。负载电容需按公式计算匹配,示波器观察是核心测试手段。

jiujiujinyuxi的博客 929

[TwistedFate]数据库初级使用

SQLite数据库使用步骤: 1. 引入libsqlite3.0框架 2. 在数据库操作类里 引入创建单例类实现数据库的管理使用// 单例的初始化方法 + (SQLiteManager *)shareManager;// 插入数据 - (void)insertTableWithStudent:(Student *)stu;// 删除数据 - (void)deleteWithAge:(NSI

Do not just be a pragrammer 490

Doris Streamloader安装教程

Doris Streamloader 是一款用于将数据导入 Doris 数据库的专用客户端工具。本文介绍其在centos7环境下的安装过程

qq_44540985的博客 1091

[TwistedFate]实例变量可⻅度、⽅法

1.实例变量可⻅度: - @protected默认是 受保护的 只能其本类或者子类去使用(一般使用) - @public 公开的 可以在类的外部进行使用 - @private 私有的 只能是本类进行使用 (基本上不用) 2.OC方法的方法名 首先,方法类型删掉 再把返回值类型删掉 再删参数类型及参数名 删完就是这方法的方法名- (instancetype)initWithNam

Do not just be a pragrammer 400

【QT开发教程】如何在Qt中使用Protobuf进行高效数据序列化

Protocol Buffers(Protobuf)是Google开发的一种语言中立、平台中立、可扩展的序列化机制,常用于数据交换和存储。Qt作为一个跨平台的C++图形用户界面应用框架,可以与Protobuf结合使用,实现高效的数据序列化和反序列化。本文将介绍如何在Qt中集成和使用Protobuf,包括基本概念、安装步骤、使用示例以及实际应用。

科技改变人类,技术成就未来 1444

【数据分析】宏基因组alpha和beta多样性分析和差异物种筛选案例

本教程为读者呈现了宏基因组α和β多样性分析的完整案例。通过实际数据和详细步骤,读者可以深入理解这两种分析方法及其在R语言中的实现过程。教程中不仅提供了清晰的代码示例,还对每一步骤进行了详细解释,使读者能够轻松跟随并掌握分析技巧。无论是初学者还是有一定基础的研究者,都能通过本教程快速上手宏基因组多样性分析,为微生物组学研究提供有力支持。

专注生信领域 2217

OC中随机数的使用(3种):arc4random,random,CCRANDOM_0_1()

1、随机数的使用      1)、arc4random() 比较精确不需要生成随即种子        使用方法 :                  通过arc4random() 获取0到x-1之间的整数的代码如下:                 int value = arc4random() % x;                  获取1到x之间的整数的

Do not just be a pragrammer 1424

PointNet++改进策略目录

后续我将如何使用文章中创新点加入的PointNet++中代码实现部分进行更新。

u012901740的博客 2198

objc4源码编译与调试

源码下载 在Apple Open Source上选择对应自己的macOS版本下,下载objc4即可。 笔者是macOS Catalina 10.15.6,所以选择的是objc4-787.1版本,顺便在该页面中下载Libc,dyld,libauto,libclosure,libdispatch,libpthread,xnu,libplatform这几个依赖库,编译objc4的时候需要用到。 解决编译错误 下载完成,解压之后我们打开工程文件,运行报错unable to find sdk 'macosx.

Do not just be a pragrammer 666

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

[TwistedFate]iOS多线程编程GCD

简介iOS有三种多线程编程的技术,分别是: (一)NSThread (二)Cocoa NSOperation (三)GCD(全称:Grand Central Dispatch) 这三种编程方式从上到下,抽象度层次是从低到高的,抽象度越高的使用越简单,也是Apple最推荐使用的。三种方式的优缺点介绍:1)NSThread: 优点:NSThread 比其他两个轻量级 缺点:需要自己管理线程的

Do not just be a pragrammer 637

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

[TwistedFate]Block 字面量

Block ^托字符(凸起符) Block保存的是 有特定功能的函数体 int (^Block)(int a, int b) = ^初值(跟前面类型要一致) block重命名typedef <#returnType#>(^<#name#>)(<#arguments#>); int (^Block)(int a, int b) = ^int (int a, int b){

Do not just be a pragrammer 596

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

[TwistedFate] NSDictionary NSSet

1.NSDictionary不可变字典类 字典 是一个容器 跟数组一样 可以保存数据 保存的形式 是以键值对的形式 一个key对应一个value key 和 value 必须是对象 key作为钥匙 要具有唯一性 在开发中 一半使用字符串作为key值 value可以是一个很复杂的结构 例如字典里嵌套一个字典 字典里保存的键值对是无序的不可变字典切记不能进行增删操作// 用两个数组来初始化

Do not just be a pragrammer 533

iOS触摸事件理解

## 如何确定由哪个视图响应触摸事件 解决这个问题之前,我们先看下几个与之相关的类。 ### UITouch 触摸,UITouch保存着跟手指相关的信息,比如触摸的位置、时间、阶段等。 1. 当手指移动时,系统会更新同一个UITouch对象,使之能够一直保存该手指在的触摸位置。 当手指离开屏幕时,系统会销毁相应的UITouch对象。 2. 一个手指触摸一次屏幕就会生产一个UITouch对象,多个手指同时触摸屏幕,就会生成多个UITouch对象。 3. 单个手指多次触摸屏幕(类似于双击等操作...

Do not just be a pragrammer 521

LLDB调试增强插件Chisel安装与使用教程

chisel是一款facebook出品的LLDB调试器增强插件,添加了诸如pviews,show,hide等命令,详细可以查看chisel wiki 安装 我们可以使用Homebrew来安装chisel,没有安装Homebrew的同学请戳Homebrew安装 已经安装了Homebrew可以直接使用下面的命令安装chisel brew install chisel 执行命令结果如上图表示已经完成...

Do not just be a pragrammer 505

[TwistedFate]继承 初始化方法 便利构造器

1.继承的特性: - 继承是单向的 - 继承是可传递的 - 不能相互继承 - 继承:就是子类继承父类的方法和实例变量 - 继承的好处:减少代码量 提高工作效率 2.继承中方法的调用 - 使用self调用方法的时候: 优先调用本类中的方法 没有继续查找上一级,找到就调用,没有继续查找,都没有程序崩溃 - 使用super调用方法的时候: 直接跳过本类去查找上一级的父类

Do not just be a pragrammer 476

[TwistedFate]NSArray NSNumber NSValue

1.数组:存储的必须是对象类型 不可变数组:NSArray 不可变数组 切记不能进行增删操作 // 数组初始化方法 NSArray *array = [NSArray alloc] initWithObjects:@"王龙",@"壮壮",@"张文",@"赵杰",@"徐阳", nil]; // 便利构造器 NSArray *array1 = [NSArray arrayWithObjects

Do not just be a pragrammer 465

[TwistedFate]category Extensxion protocol

类目category 类目特点:可以给看不到实现的系统类添加方法 并且添加的方法 使用系统类的对象 或者 类名 直接就可以调用的切记:1.只能添加方法 不能添加实例变量 2.类目中添加的方法相当于直接添加到系统类中 是可以被继承的 注意:在实际编程中,应注意积累,对以后的编程能提供很大的便利延展Extension 或者 @implementation Function // 私有

Do not just be a pragrammer 449

[TwistedFate]高级内存管理 多态

内容回顾Person *p = [[Person alloc] init]; NSString *name = [[NSString alloc] initWithFormat:@"王龙"]; NSString *name1 = [[NSString alloc] initWithFormat:@"zhuanghzhua"]; p.name = name; NSLog(@"%ld",name.re

Do not just be a pragrammer 447

copy和mutablecopy

对于系统的非容器类对象,我们可以认为,如果对一不可变对象复制,copy是指针复制(浅拷贝)和mutableCopy就是对象复制(深拷贝)。 如果是对可变对象复制,都是深拷贝,但是copy返回的对象是不可变的。 系统的容器类对象:指NSArray,NSDictionary等。对于容器类本身,上面讨论的结论也是适用的,但是注意的是,容器内的元素内容都是指针复制。如果需要元素对象也是对象复制,就需要实

Do not just be a pragrammer 436
上一篇: [TwistedFate]函数指针 函数回调
下一篇: [TwistedFate]面向对象编程、类和对象、实例变量操作
zZZ浮生
博客等级 码龄11年 12粉丝 70原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值