火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
12
返回列表 发新帖
楼主: urenai
打印 上一主题 下一主题

[视窗] ★ 重要知识点记录,关于结构体。

[复制链接]

55

主题

757

帖子

3515

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
3515
11#
发表于 2022-7-14 12:55:43 | 只看该作者
tmf19901124 发表于 2022-7-14 12:45
不要用火山的结构类!不要用火山的结构类!不要用火山的结构类!重要的事情说三遍! ...

建议再说三十遍,或者说点实际的,不然未必有人听
回复

使用道具 举报

439

主题

1万

帖子

3万

积分

超级版主

Rank: 8Rank: 8

积分
36487
12#
发表于 2022-7-14 13:13:29 | 只看该作者
urenai 发表于 2022-7-14 10:04
对啊对啊,@创世魂 抽空把那些内部函数搞个笔记就好了, SetStruct 和 GetStruct 我还头一回见。 ...

这个太高级了。。要后面有空专门来弄。现在主要弄基础手册
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

7

主题

241

帖子

1903

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1903
13#
发表于 2022-7-14 14:35:21 | 只看该作者
hcwanz 发表于 2022-7-14 12:55
建议再说三十遍,或者说点实际的,不然未必有人听

没人听不要紧,踩坑了就知道老司机的忠告了。。。。。。。。。。。。
回复

使用道具 举报

10

主题

169

帖子

1382

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1382
14#
发表于 2022-7-14 16:22:43 | 只看该作者
tmf19901124 发表于 2022-7-14 14:35
没人听不要紧,踩坑了就知道老司机的忠告了。。。。。。。。。。。。

如果说不用自带的结构体,那么上面那个要怎么解决这个最简单的 rect 结构体的问题呢,不管怎么内嵌,最终还是要传到火山本地变量上啊,本地变量又只能用结构体,哥们有什么好的方式能推荐吗,
回复

使用道具 举报

7

主题

241

帖子

1903

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1903
15#
发表于 2022-7-14 19:31:20 | 只看该作者
jiaozhu 发表于 2022-7-14 16:22
如果说不用自带的结构体,那么上面那个要怎么解决这个最简单的 rect 结构体的问题呢,不管怎么内嵌,最终还 ...

嵌入c++结构体+火山的属性读写,缺点就是封装慢,优点是使用舒服,彻底解决内存对齐,各种嵌套,各种数组问题。

**图片_20220714192859.png (32.75 KB, 下载次数: 10)

**图片_20220714192859.png
回复

使用道具 举报

307

主题

1382

帖子

5315

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
5315
QQ
16#
 楼主| 发表于 2022-7-14 21:36:10 | 只看该作者
tmf19901124 发表于 2022-7-14 19:31
嵌入c++结构体+火山的属性读写,缺点就是封装慢,优点是使用舒服,彻底解决内存对齐,各种嵌套,各种数组 ...

哦哦哦,我草,对啊,嵌套的用memcpy没有啊,没法对齐啊、
专业承接18-98岁xx的心理及生理教育辅导。
回复

使用道具 举报

6

主题

64

帖子

2245

积分

金牌会员

Rank: 6Rank: 6

积分
2245
17#
发表于 2022-7-17 21:12:28 | 只看该作者
Xelloss0618 发表于 2022-7-14 08:46
纠正一下,你取的是火山类成员变量的地址,并不是结构体的。
+24是32位火山基本类的头大小,64位又是另一个 ...

纠正纠正一下(笑)并补充一点细节,火山基本类,即 CVolObject,定义在 vol_object.h 头文件中。这个类有一个虚函数表指针、一个 UINT_P 成员变量、一个 INT_P 成员变量,三者大小都是 32 位下占4字节,64 位下占8字节,所以这个类在32位下是12字节,64位下才是24字节。
火山PC交流群: 748413192
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-5-7 22:52 , Processed in 0.098665 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表