如何理解?
const int* ptr = &x;
int* const ptr = &x;
const int* ptr = &x;
int* const ptr = &x;
const int* ptr(指针指向的数据是常量)
ptr 是一个指针,指向一个 const int(即数据不可变,但指针本身可以指向其他地址)。
int* const ptr(指针本身是常量)
ptr 是一个 常量指针,指向一个 int(即 指针本身不可变,但指向的数据可以修改)。
ptr 是一个指针,指向一个 const int(即数据不可变,但指针本身可以指向其他地址)。
int* const ptr(指针本身是常量)
ptr 是一个 常量指针,指向一个 int(即 指针本身不可变,但指向的数据可以修改)。
读代码的时候看到了这个,这是什么语法?
#define DO_API(r, n, p) extern r (*n) p
#include “..\appdata\il2cpp-api-functions.h”
#undef DO_API
#define DO_API(r, n, p) extern r (*n) p
#include “..\appdata\il2cpp-api-functions.h”
#undef DO_API
#define DO_API(r, n, p) extern r (*n) p
定义了一个宏DO_API,它接受三个参数:r: 返回值类型 n: 函数名 p: 参数列表,宏展开后会 生成一个外部函数指针声明,格式为extern 返回值类型 (*函数名) 参数列表
#include “..\appdata\il2cpp-api-functions.h”
包含一个头文件,这个头文件里应该会有很多DO_API宏的调用
#undef DO_API
取消DO_API宏的定义,避免影响后续代码
定义了一个宏DO_API,它接受三个参数:r: 返回值类型 n: 函数名 p: 参数列表,宏展开后会 生成一个外部函数指针声明,格式为extern 返回值类型 (*函数名) 参数列表
#include “..\appdata\il2cpp-api-functions.h”
包含一个头文件,这个头文件里应该会有很多DO_API宏的调用
#undef DO_API
取消DO_API宏的定义,避免影响后续代码
读代码的时候看到了这个,这是什么语法?
namespace app { #include “..\appdata\il2cpp-functions.h” }
#undef DO_APP_FUNC
namespace app { #include “..\appdata\il2cpp-functions.h” }
#undef DO_APP_FUNC
namespace app { #include “..\appdata\il2cpp-functions.h” }
将头文件 il2cpp-functions.h 中的所有声明(函数、类、变量等)都放入 app 命名空间中。
#undef DO_APP_FUNC
取消之前定义的宏 DO_APP_FUNC
将头文件 il2cpp-functions.h 中的所有声明(函数、类、变量等)都放入 app 命名空间中。
#undef DO_APP_FUNC
取消之前定义的宏 DO_APP_FUNC
C++中的虚函数
virtual void show()
虚函数是在基类中使用virtual关键字声明的成员函数,其目的是允许派生类重写(override)该函数以实现不同的行为
虚函数是在基类中使用virtual关键字声明的成员函数,其目的是允许派生类重写(override)该函数以实现不同的行为
Windows关键字:WINAPI / __stdcall
#define __stdcall WINAPI
__stdcall 调用约定用于调用 Win32 API 函数。 被调用方将清理堆栈,以便让编译器生成 vararg 函数 __cdecl。 使用此调用约定的函数需要一个函数原型。 __stdcall 修饰符是 Microsoft 专用的。
__stdcall 调用约定用于调用 Win32 API 函数。 被调用方将清理堆栈,以便让编译器生成 vararg 函数 __cdecl。 使用此调用约定的函数需要一个函数原型。 __stdcall 修饰符是 Microsoft 专用的。