找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 活动 交友 discuz
查看: 338|回复: 6

[BUG已解决] 请问类的构造函数是不是又改变规则了?

[复制链接]

32

主题

143

回帖

736

积分

高级会员

积分
736
发表于 2024-5-19 20:06:12 | 显示全部楼层 |阅读模式
本帖最后由 呵呵仙 于 2024-5-21 12:22 编辑

我明明,之前写的一个类,在构造函数中用API去读成员变量,它是一个结构体变量,能顺利编译不报错的!

为何现在报内存错误了!?找了N久.也找不到问题所在,原来是改成了调用构造函数前,结构体变量都未创建吗?


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

63

主题

218

回帖

1016

积分

管理员

积分
1016
发表于 2024-5-20 15:07:38 | 显示全部楼层
在构造函数中 成员已经存在了, 应该是其他原因

32

主题

143

回帖

736

积分

高级会员

积分
736
 楼主| 发表于 2024-5-20 20:20:49 | 显示全部楼层
admin 发表于 2024-5-20 15:07
在构造函数中 成员已经存在了, 应该是其他原因

我也搞不明白,这个API是DLL导入表声明的.以前未取消两个下划降前.能这样在构造中使用的!经测试.自已
动态调用也不可以在构造中使用的.这函数必须用于方法上才能成功!!

63

主题

218

回帖

1016

积分

管理员

积分
1016
发表于 2024-5-20 23:18:02 | 显示全部楼层
你是不是 写在全局,  DLL导入表 还没加载, 你的类就构造了; 所以你要写在入口函数 进入之后执行

32

主题

143

回帖

736

积分

高级会员

积分
736
 楼主| 发表于 2024-5-21 00:26:27 | 显示全部楼层
admin 发表于 2024-5-20 23:18
你是不是 写在全局,  DLL导入表 还没加载, 你的类就构造了; 所以你要写在入口函数 进入之后执行 ...

出现两种效果,我把代码传上来吧!!














本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

63

主题

218

回帖

1016

积分

管理员

积分
1016
发表于 2024-5-21 00:40:14 | 显示全部楼层
我猜测你的窗口类 定义的是全局变量,  全局变量构造的时候 还没进入入口函数,  因为DLL导入表 是在进入 入口函数 加载DLL的

32

主题

143

回帖

736

积分

高级会员

积分
736
 楼主| 发表于 2024-5-21 12:22:07 | 显示全部楼层
admin 发表于 2024-5-21 00:40
我猜测你的窗口类 定义的是全局变量,  全局变量构造的时候 还没进入入口函数,  因为DLL导入表 是在进入 入 ...

的确是这样,窗口类为入口函数局部变量就可以了!!谢谢解答,如不属于BUG就改主题了!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|炫语言 | 炫彩界面库 | 用户所需, 正是我所做! ( 鄂ICP备2023014763号-1 )

GMT+8, 2024-11-23 17:41 , Processed in 0.073830 second(s), 20 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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