剑仙java_【剑仙教程】易语言的结构体。自定义数据类型。
1楼. 【剑仙教程】易语言的结构体。自定义数据类型。
在易语言中,有基本数据类型,自定义数据类型。
自定义数据类型,在C语言/C++中称为结构体。这是面向对象和类的编程。
.
.
先上代码。打开易语言的IDE,IDE,是开发环境。
点击“插入”菜单,选择“数据类型”
这时,代码编辑框就会增加一个数据类型的窗口。
把“数据类型1”命名为“精易_座标”,勾选“公开项”。
这样,一个 精易_座标 的类就做好了。
.
再按回车键,给这个类增加2个成员。
x 整数型
y 整数型
.
访问时,直接写代码就OK。这些操作是不是很简单?
精易_座标.x = 100
精易_座标.y = 101
输出调试文本(精易_座标.x)
输出调试文本(精易_座标.y)
.
2楼. 下面详细讲解。
.
【结构体的作用】
结构体具有基本数据类型, 一样的功能。
它有一个最强项,打包功能。
结构体可以把,多个小数型,整数型,文本型,字节型,字节集打包成一个类,
方便日后的调用。
//
//
结构体的好处不是简便,而是封装。
封装的好处,在于可以再次调用,重复调用。
这样可以让使用者不必关心这个类是什么,
只需要根据定义来使用就可以。
====================================================
.
结构体是把很多种基本的数据类型,归纳为一个类来管理。
(面向对象和类的编程)
.
.
在C语言中,
结构体声明了一个具有某种属性的类,可以用它定义具有这属性的变量,
属性值由一个或多个同种或不同基本类型(包括联合类型、枚举类型、数组、其他结构体)组成。
结构体类型,可以把不同类型的变量归纳到一起,以方便管理。
.
3楼. 举三个实例。
.
.
例子1:
一批学生去参加军训,
生活物品要打包成包裹,
收集到车厢,
到达目的地再分发。
.
把所有学生的 牙膏,牙刷,杯子,毛巾统一归类,做成一个包。
衣服统一归类,打成一个包。
被子统一归类,打成一个包。
这样自然不行。违反卫生要求又不斯文,而且难分发。
//
//
实际上,每个学生都是一个对象。把每个对象的东西打成一包
(牙膏,牙刷,杯子,毛巾,衣服,被子,鞋子 ),贴上姓名标签。
再把这些包裹,统一收集到车厢汇总。
去到目的地,再分发。这样就变得简单了。
//
//
按照这个操作方法,
把学生01的物品,打包成一个数据类型,贴上标签。
.数据类型 学生01,公开
.成员 牙膏, 整数型
.成员 牙刷, 整数型
.成员 杯子, 整数型
.成员 毛巾, 文本型
.成员 衣服, 文本型
//
把学生02的物品,打包成一个数据类型,贴上标签。
.数据类型 学生02,公开
.成员 牙膏, 整数型
.成员 牙刷, 整数型
.成员 杯子, 整数型
.成员 衣服, 文本型
.成员 被子, 文本型
//
把学生03的物品,打包成一个数据类型,贴上标签。
.数据类型 学生03,公开
.成员 牙膏, 整数型
.成员 牙刷, 整数型
.成员 杯子, 整数型
.成员 衣服, 文本型
.成员 鞋子, 字节型
……
……
学生01,学生02,学生03这些编号,相当于包裹上面的标签。
//
//
再右键,新建数据类型,做一个车厢_包裹汇总。
2楼讲到,结构体里面的成员可以是结构体。
刚才 学生01,学生02,学生03这些都是结构体,现在新建的 车厢_包裹汇总 也是结构体。
.
.数据类型 车厢_包裹汇总,公开
.成员 a01, 学生01
.成员 a02, 学生02
.成员 a03, 学生03
这样 a01 就有了“学生01”的属性。a01=学生01,,可以这样理解。
//
//
调用时,建立一个局部变量“as”,数据类型定义为“车厢_包裹汇总”。
这样 as 就带有了“车厢_包裹汇总”的属性。
as=车厢_包裹汇总,,可以这样理解。
.
as.a01.杯子 = 100
输出调试文本(as.a01.杯子)
这样就OK了。
//
//
as.a01.杯子 = 100
刚才把“学生01”的属性,赋值给 a01变量。
把
“车厢_包裹汇总”的属性,赋值给 as变量。
上面代码的意思,可以理解成
车厢_包裹汇总.学生01.杯子 = 100
.
4楼. 例子2:
在一家商店,每天都有不同的顾客来购物。
每个买家都买了4件同样的东西, 酱油 大米 黄豆 绿豆
这样, 就可以用一个结构体来管理。
这是结构体的嵌套用法。把一个结构体,做成另一个结构体的成员。在表单中经常用到。在游戏外.挂.中也经常用到。
这些和例子1的做法是一样的。
.
.数据类型 出货单
.成员 酱油, 小数型
.成员 大米, 整数型
.成员 黄豆, 字节型
.成员 绿豆, 子程序指针
.
5楼. 例子3:
windows api 大多数都会用到结构体。系统的API和结构体。
函数原型:BOOL GetCursorPos(LPPOINT lpPoint)
参数:
IpPoint:POINT结构体指针,用结构体来接收光标的屏幕坐标。
//
//
‘数据类型。先自定义数据类型point,在下面的三个地方,都要用到point
.版本 2
.数据类型 point, , point
.成员 x, 整数型, , ,
.成员 y, 整数型, , ,
//
.版本 2
.DLL命令 GetCursorPos, 整数型, “user32.dll”, “GetCursorPos”
.参数 当前位置, point
//
‘在子程序中这样使用
.版本 2
.子程序 函数, 整数型
.局部变量 当前座标, point
GetCursorPos(当前座标)
输出调试文本(当前座标.x)
输出调试文本(当前座标.y)
剑仙十号 5-12 07:32 回复 删
6楼. 总结。
结构体,是面向对象和类的编程。这是一门仿生学,在电脑中模拟真实的物理世界。
它用来描述一个事物/一件事件的集合。
.
比如,用来形容某个人的真实信息。
名字,性别 ,身高 ,体重,学历, 年龄,
这些参数组成的一个集合,用来描述一个人。
这个人就是一个对象 ,这个对象里面有名字,性别 ,身高 ,体重,学历, 年龄这些信息。
所以,在初始化一个结构体 对象参数的时候,
必须一次给出所有的参数,即使没有给出具有实际意义的参数,也要把这些参数 赋值为0,赋值为“”。
6楼学习,借鉴群主的资料。
//
//
呵呵侠客60: 回复 说白了就 是把一堆变量堆到一起。
简单易懂的理解。[真棒]
//
7楼. 为什么直接抄精易模块的代码?
樉 5-9 16:24
你会写对象吗?你会用类吗?你会JAVA?C++这些理论?用精易_座标举个例子而已。
精易的,对新手来说好理解,印象深刻。某个新手见到精易座标,说不定找精易源码来学习,鼠标,键盘,找图,找色,找字识字这些的,,大大的有进步。
.
用精易_座标做例子,其实是深有考虑的。
学习思维图像,学习记忆模型,
好的讲师只用几条线条,简单的几句话,就让人把理论记住一辈子。
.
不好的讲师,他啰嗦啰嗦的讲半天,长篇大论,学生却在下面睡大觉。什么也没有学到。
使用复杂,高强度的例子,反而不好记。
//
582828767: 回复 貌似没有见到过,详细介绍自定义类型 的教程,不过自定义类型的 确很重要。
还好有c语言基础,直接就理解了。
剑仙java_【剑仙教程】易语言的结构体。自定义数据类型。相关推荐
- 【剑仙教程】易语言的结构体。自定义数据类型。
1楼. [剑仙教程]易语言的结构体.自定义数据类型. 在易语言中,有基本数据类型,自定义数据类型. 自定义数据类型,在C语言/C++中称为结构体.这是面向对象和类的编程. . . 先上代码.打开易语言 ...
- 乐意微信HOOK培训教程(易语言版)价值1500元
乐意微信HOOK培训教程(易语言版)价值1500元 1_认识Hook 2_Hook的分类_ 3_学习Hook必备的知识_ 4_实现简单的Hook流程_ 5_Hook的基本代码讲解和实现_ 6_API_ ...
- c语言将结构体存储在数组中,结构体数组方法用法 _C语言-w3school教程
C语言 的 结构体数组 在C语言编程中可以将一系列结构体来存储不同数据类型的许多信息. 结构体数组也称为结构的集合. 我们来看一个数组结构体的例子,存储5位学生的信息并打印出来.创建一个源文件:str ...
- c语言常量结构体的成员,c语言之结构体
c语言之结构体 1.结构体基础知识 C语言提供了两种类型的聚合数据类型(能够同时存储超过一个的单独数据),数组和结构.数则是相同类型的元素的集合,而结构也是一些值的集合,这些值称为它的成员,单一个结构 ...
- c语言 结构体的,c语言之结构体
c语言之结构体 1.结构体基础知识 C语言提供了两种类型的聚合数据类型(能够同时存储超过一个的单独数据),数组和结构.数则是相同类型的元素的集合,而结构也是一些值的集合,这些值称为它的成员,单一个结构 ...
- C 语言编程 — 结构体的数据类型转换
目录 文章目录 目录 数组类型强制类型转换为结构体 结构体之间的强制类型转换 数组类型强制类型转换为结构体 先看一个例子: #include <stdio.h>int main(void) ...
- 【C 语言】结构体 ( 结构体 数组 作为函数参数 | 数组 在 堆内存创建 )
文章目录 一.结构体 数组 作为函数参数 ( 数组 在 堆内存创建 ) 二.完整代码示例 一.结构体 数组 作为函数参数 ( 数组 在 堆内存创建 ) 在上一篇博客 [C 语言]结构体 ( 结构体 数 ...
- C 语言中结构体强制转换--实验
2019独角兽企业重金招聘Python工程师标准>>> 对于C语言中结构体强制转换做了如下实验, 或许可以解惑一些问题 对于结构体, 我理解的属性有: 成员的顺序, 成员的类型,成员 ...
- java接收c语言的结构体
java接收c语言的结构体 DataInputStream inputStream = new DataInputStream(s.getInputStream()); int read = 0; i ...
最新文章
- VS Code 调试 OneFlow
- java 并发统计_java并发编程|CountDownLatch计数器
- 【经验心得】CS1.6:经典中的精品
- Selenium IDE安装
- javabeans_(单元测试)JavaBeans的技巧
- link2001错误无法解析外部符号metaObject
- SpringBoot中注入ApplicationContext对象的三种方式
- int true python_python基本数据类型,int, str, bool及相关操作
- 数据库操作之整合Mybaties和事务讲解 5节课
- 使用pienv安装python虚拟环境(学习记录)
- 计算机网络未来的发展和趋势论文,计算机网络发展论文范文
- python盖帽法_干货:用Python进行数据清洗,这7种方法你一定要掌握
- 五月份适合去哪旅游 国内15个旅游胜地
- 解决安装MySQL后,Excel打开很慢的问题
- 问答网站Stack Overflow的成功之道
- 【Unity3d Shader】景深效果
- 人生就是一个醒悟的过程(深度好文)
- 字符串包含单引号加上mybitis${}写法引发的plese exclude tableName or statementId异常
- Ubuntu22.04.01Desktop桌面版安装记录221109
- vim滚动屏幕快捷键汇总