-
Notifications
You must be signed in to change notification settings - Fork 1
Key Respons Game
MemoryShadow edited this page Sep 12, 2022
·
2 revisions
此项正在编辑
在此处展示这个头文件的相关函数与相关类型
这个头文件中包含了以下几个类型
类型名 | 原始类型 | 作用 |
---|---|---|
MoveDirection | enum | 中文称谓(在注释中):移动方向 在使用layer_Move时可以作为第二参数填入,不同方向可以用|符号进行隔开同时提交 |
声明结构
enum MoveDirection
{
Up = 1,
Down = 2,
Left = 4,
Right = 8
};
这个头文件中包含了以下几个函数
函数名 | 参数列表 | 返回类型 | 具体作用 | 使用示例 |
---|---|---|---|---|
new_Window_layer |
unsigned width unsigned height
|
Window_layer * | 创建一个Window_layer结构,返回新建的指针您可以理解为面向对象语言中的new操作符
|
Window_layer *main_layer = new_Window_layer(20, 15); |
new_Paint_layer | Window_layer *Window |
Paint_layer * | 在指定窗口的顶层创建一个绘制层您可以理解为面向对象语言中的new操作符
|
Paint_layer *edge_layer = new_Paint_layer(main_layer); |
layer_length | const Window_layer *Window |
unsigned | 计算某个窗口层的绘制层数量 | 示例代码见详解 |
Remove_layer |
Window_layer *Window unsigned index
|
Paint_layer * | 将某个绘制层从所属的窗口层中剥离出来(会拒绝剥离0) | Remove_layer(main_layer,1) |
delete_Paint_layer | Paint_layer *layer |
Paint_layer * | 释放某个窗口层的内容,您可以理解为面向对象语言中的delete操作符 (别忘记先将其从窗口层中剥离) |
delete_Paint_layer(Window) |
delete_Window_layer | Window_layer *Window |
void | 释放某个窗口层(会删除其所有绘制层)您可以理解为面向对象语言中的delete操作符
|
delete_Window_layer(main_layer) |
layer_index |
Window_layer *Window unsigned index
|
Paint_layer * | 取得某个窗口层中指定索引的绘制层指针 | layer_index(main_layer,1) |
Write_Point |
Paint_layer *layer unsigned x unsigned y CHAR Char
|
Paint_layer * | 在指定的层中指定的位置,填充指定的字符(成功返回此层指针,失败返回NULL) | 示例代码见详解 |
Get_Point |
Paint_layer *layer unsigned x unsigned y
|
CHAR | 在指定的层中获取指定位置的字符(成功返回此字符,失败..就返回\0好了) | 示例代码见详解 |
WindowDraw |
Window_layer *Window int Convert = 0
|
void | 绘制指定的窗口,参数Convert控制是否对于特定的半角字符转换为全角进行渲染 | WindowDraw(main_layer) |
layer_Move |
Paint_layer *layer unsigned Direction unsigned length
|
Paint_layer * | 将一个绘制层按照指定的方向移动指定的步长 | layer_Move(layer_length(main_layer,1),Up,1) |
函数原型:
Window_layer *new_Window_layer(unsigned width, unsigned height);
对于它的两个参数:
unsigned width
:标记了这个窗口层的最大宽度
unsigned height
:标记了这个窗口层的最大高度
创建一个Window_layer结构,返回新建的指针
您可以理解为面向对象语言中的new操作符
示例代码:
Window_layer *main_layer = new_Window_layer(20, 15);
它看起来像极了C++中的new语法对吗,是的,这就是沿用了C++的语法,但是这个工具目标是在C下运行的,所以千万不要忽略了new后面的下划线
参考资料:C++中的new语法
上面所提到的,沿用了C++的语法,此处是参考,对于尚未接触面向对象语言,或者接触过但是尚未接触C++语言的开发者,可能这部分资料会对你有一些帮助.
Window_layer *main_layer = new Window_layer(20, 15);
这段代码将会调用类型Window_layer的构造器Window_layer::Window_layer(unsigned,unsigned)
新增一个Window_layer类型的实例,这个实例的指针会被Window_layer的构造器
返回
并且放到Window_layer *main_layer
所声明的Window_layer类型指针main_layer中去.
如果想要了解更多,请参阅C++文档