来自 #ifdef 的疑惑

田雷雨 2020-09-27 10:41:10


#ifdef _WIN64 //defined by default
typedef unsigned long long uint;
#else
typedef unsigned long uint;
#endif // _WIN64


但是在某些特殊情况下,即使定义了
_WIN64

,也想
typedef unsigned long uint;


我应该怎么做?
...全文
1484 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
donwmufromdying 2020-09-28
  • 打赏
  • 举报
回复
你确定在64位平台定义一个32位的uint?那会被玩死的。如果你代码很干净,不依赖任何第三方的代码,甚至不依赖操作系统的API,那么可能没问题。否则就要冲突
芒果黑 2020-09-28
  • 打赏
  • 举报
回复
可以自己#define一个,不是这种情况的时候注释掉
hitzsf 2020-09-28
  • 打赏
  • 举报
回复
uint 以及是平台固定的数据类型名称了,不要修改, 另外起个别名吧
田雷雨 2020-09-28
  • 打赏
  • 举报
回复
引用 3 楼 donwmufromdying 的回复:
你确定在64位平台定义一个32位的uint?那会被玩死的。如果你代码很干净,不依赖任何第三方的代码,甚至不依赖操作系统的API,那么可能没问题。否则就要冲突
谢谢提醒,
田雷雨 2020-09-28
  • 打赏
  • 举报
回复
引用 2 楼 芒果黑 的回复:
可以自己#define一个,不是这种情况的时候注释掉
我想到了也只有这个,不知道有没有更好的方法, 希望能在函数里修改.
田雷雨 2020-09-28
  • 打赏
  • 举报
回复
引用 1 楼 hitzsf 的回复:
uint 以及是平台固定的数据类型名称了,不要修改, 另外起个别名吧
谢谢提醒,不过我只是WINDOW开发,应该问题不大吧

16,814

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧