- 博客(18)
- 收藏
- 关注
原创 AIDL Failed to resolve ‘IMyCallback‘ 错误
在项目中创建aidl文件引入另一个aidl文件发现Failed to resolve 'IMyCallback' 错误。
2025-02-16 13:11:18
299
原创 C++ 中使用 uint32_t/uint64_t
uint32_t是一个无符号 32 位整数类型,它是 C 语言标准库中的stdint.h头文件定义的一个整数类型。uint32_t:表示一个无符号整数,即该变量只能存储非负整数。32 位:指这个整数类型占用 32 位(4 字节)的内存空间。无符号:意味着它不包含负数,只能存储 0 和正整数。在stdint.h文件中在 C++ 中,你可以使用uint32_t来表示一个无符号的 32 位整数,只需包含cstdint头文件。uint64_t。
2024-12-21 11:17:26
3313
原创 C++ 实现一个类
如果有多个成员变量,使用构造函数传递多个参数时,要注意构造函数的顺序应与成员变量的声明顺序一致,因为初始化列表的参数顺序是固定的。构造函数的参数顺序并不影响实际的成员变量初始化顺序,成员变量的初始化顺序是按照它们在类中的声明顺序来初始化的。,它在构造函数的开始部分直接对类的成员变量进行初始化。是推荐的做法,它提供了更高的性能和更简洁的代码,特别是在处理复杂类型时。相比于初始化列表,额外的默认构造和赋值操作造成了一定的开销。初始化成员变量,然后在构造函数体内将传入的参数值赋给成员变量。这两种写法的区别在于。
2024-12-17 22:10:01
1031
原创 0/1 背包问题 -- 用贪心算法思想实现
物品2 - 价值: 70, 重量: 10。物品3 - 价值: 60, 重量: 10。物品1 - 价值: 66, 重量: 6。物品4 - 价值: 40, 重量: 8。
2024-12-09 21:29:25
601
原创 sprintf 将格式化的数据写入字符串
sprintf用于将格式化的数据写入字符串。使用时要特别注意缓冲区的大小,避免溢出。为了避免潜在的溢出问题,推荐使用snprintf,它可以安全地限制写入的字符数。
2024-12-08 17:58:33
612
原创 PS处理水印文字
2.4 选择 -- 色彩范围 -- 取样颜色 -- 选中要去掉的水印文字颜色 -- 选择合适的颜色容差 -- 点击确认。2.5 选择 -- 修改 -- 扩展 -- 扩展量(修改为10) -- 确认。2.7 ctrl + e,合并两个图层,这个时候复制的那个图层就会被合并。2.8 点击 Del 删除键,会跳出一个弹窗(填充),使用选择“2.6 显示出原先的那个原图层(还是点击那个小眼睛打开即可)2.3 隐藏掉原先的那个图层,点击那个小眼睛。这个时候水印文字就会消失,即表示去水印成功了。,点击确定 == 》
2024-12-08 13:42:45
517
原创 C语言 宏定义使用 -- 预编译,预处理
常量宏定义一个宏int main()// 输出 1500// 输出 hello bit宏函数(带参数的宏)#define SQUARE(x) ((x) * (x)) --》 x的平方#define DOUBLE(x) (x+x) --》 x的两倍// 输出 6// 输出 25PRINT(ml);// 输出 the value of ml is 10PRINT(ml2);// 输出 the value of ml2 is 20结论:宏定义里面的#N会转换为""进行拼接。
2024-12-02 21:57:44
438
原创 数组作为方法参数中和在main方法中的区别
/ 定义一个包含 5 个整数的数组// 数组可以在定义时初始化:// 定义并初始化数组// 如果数组的大小在初始化时省略,编译器会根据提供的元素数量自动计算:// 数组大小自动为 5i < size;int main()// 数组作为参数传递明明是数组作为参数传递,结果数组大小却不一样,本来是将数组作为参数进行拷贝,其实只是创造具有相同名称的指针变量,而不是创建整个数组,编译器只是复制第一个元素的地址4.1 用指针进行访问数组。
2024-11-03 16:29:28
358
原创 内存参数sysctl_lowmem_reserve_ratio,min_free_kbytes
函数在系统管理中起着重要作用。它会在 或 发生变化时被调用,以更新系统中应保留的低内存页面总数。根据系统的低内存()大小来初始化 参数,以确保系统在不同规模的机器上保持适当的空闲内存。其核心逻辑如下:我们来用公式 进行几个具体例子的计算。
2024-10-26 22:42:15
803
原创 C语言实现创建文件功能
以下是一个完整的示例,展示如何在当前目录下创建一个子目录,并在该子目录中创建一个文件。程序成功运行后,会在当前目录下创建一个名为。程序成功运行后,将在当前目录下创建一个名为。的子目录,并在该子目录中创建一个名为。模式打开文件,表示以写入模式打开文件。的文件,并在其中写入两行文本。在当前目录下创建一个子目录。在 C 语言中,您可以。
2024-10-17 22:37:16
1034
原创 snprintf 函数
snprintf函数用于格式化字符串并将其写入指定的字符数组中。它是sprintf的安全版本,可以防止缓冲区溢出,因为您可以指定写入的最大字符数。下面是snprintf函数的基本用法和示例。str: 指向目标字符数组的指针,用于存储生成的字符串。size: 要写入的最大字符数(包括字符串的终止空字符\0format: 格式字符串,指定如何格式化后续参数。...: 可变参数,依据格式字符串提供的值。返回值返回写入字符的总数(不包括终止的\0字符)。如果生成的字符串长度大于size - 1。
2024-10-17 22:01:31
601
原创 如何在Visual Studio 中写 JNI代码呢?
这个数组通常会在 JNI_OnLoad 或其他初始化函数中注册到 Java 虚拟机 (JVM) 中,以便 Java 代码可以调用这些 C/C++ 实现的本地方法。这样是能找到的,说明配置正确,可以写JNI了,然后结合java上层就可以调用C++本地代码了。,该数组包含了一些 JNI(Java Native Interface)方法的注册信息。#include 会报错,无法正确找到。创建一个C++项目,写一个cpp文件,发现引入。看下c++层面的代码。
2024-10-16 22:59:53
1054
原创 Android.bp在安卓项目中的构建
Android.bp是 Android 构建系统的一部分,主要用于描述模块和它们之间的依赖关系。它使用一种名为 Blueprint 的 DSL(领域特定语言)来定义模块的属性和行为,取代了之前的Android.mk文件。
2024-10-16 22:02:02
1920
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人