为什么Win32-API有这么多的自定义类型?
发布时间:2020-12-13 20:14:30 所属栏目:Windows 来源:网络整理
导读:我是Win32 API的新手,许多新的类型开始混淆我. 一些功能需要1-2个int和3个UINTS作为参数. 为什么不能使用int?什么是UINTS? 然后,还有其他类型: DWORD LPCWSTR LPBOOL 再次,我认为“原始”C类型将足够 – 为什么要引入100种新类型? 这是一个痛苦:WCHAR *
我是Win32 API的新手,许多新的类型开始混淆我.
一些功能需要1-2个int和3个UINTS作为参数. >为什么不能使用int?什么是UINTS? 然后,还有其他类型: DWORD LPCWSTR LPBOOL >再次,我认为“原始”C类型将足够 – 为什么要引入100种新类型? 这是一个痛苦:WCHAR * 我必须遍历它,并将每个字符push_back推送到std :: string,因为没有另一种方法将其转换为一个.可怕. >为什么选择WCHAR?为什么要重新发明轮?他们可能只是使用char *,或者?
Windows API最早在20世纪80年代创建,多年来一直支持多种不同的CPU架构和编译器.他们已经从单用户单进程独立系统转变为网络多用户多核安全意识系统.他们必须解决16位与32位处理器和现在的64位处理器的问题.他们必须解决前ANSI C编译器的问题.他们不得不在早期的非标准化时期支持C编译器.他们不得不处理分段记忆.在Unicode存在之前,他们必须支持国际化.他们必须支持与MS-DOS,OS / 2和Mac OS的一些源级兼容性.他们不得不运行几代英特尔芯片,PowerPC和MIPS,以及Alpha和ARM.桌面,服务器,手机和嵌入式系统都使用相同的基本API.
早在上世纪80年代,C被认为是高级语言(是的,真的!),许多人认为它是使用抽象类型的好形式,而不是将所有内容指定为原始的int,char或void *.当我们没有IntelliSense和信息技术和代码浏览器和在线文档等时,这种使用提示是有帮助的,它使得在不同的编译器和不同的编程语言之间更容易地传输代码. 是的,这是一个可怕的混乱,但这并不意味着他们做错了. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows – 如何导出确定时间段内的所有系统事件日志
- 最新win10和office2016,office2019密钥实时更新
- window7利用Nexus搭建maven私有服务器
- .net – 如何使用Mono.Cecil检查.pdb和.dll文件是否匹配?
- 部署 – 如何签署安装程序以防止Vista的UAC警告
- windows-phone-7 – WP7 Bing Map Pushpin – 如何调整自定
- iis – Windows Web Server是否应该是Active Directory域的
- 是否可以在heroku平台上运行Windows服务/应用程序(c#)?
- winforms – Devexpress Windows Controls使用不直观?
- windows – 在批处理文件中捕获错误(7-zip)
推荐文章
站长推荐
热点阅读