是否可以在不使用C ++(仅使用C)的情况下学习Win32 API?

时间:2019-10-09 07:27:12

标签: c++ c winapi

对于这个奇怪的问题,我感到抱歉。我在Google上搜索并查看了解决方案,但没有一个答案能满足我的实际需求。

我对这个问题感到非常困惑。我学习基于安全的工作已经快两年了。因此,我对Python和C有很好的了解。

我推荐的公司建议我学习Win32。但是当我开始学习它时,我发现Win32是基于C ++的。但是我不想再浪费时间去研究它。我认为有些博客谈论C / C ++中的Windows编程,这使我更加困惑,因为C和C ++本质上是彼此分离的。

我的问题是:

  1. 我只能使用C来学习Win32吗?

  2. 如果不是,那么我可以通过C来学习它吗?

  3. 如果是,我必须走多深(所以,它的所有上下文或特定上下文)?

再次抱歉。我现在真的很困惑,因为我不知道该怎么办。

1 个答案:

答案 0 :(得分:2)

据我所知-是的,应该有可能。较早的Windows API实际上是基于C的,这就是我20年前学到的。它们非常简单。较新的版本基于COM,这在C语言中比较麻烦,但绝不是不可能的。我记得曾经读过一些关于这样做的很好的尾声(用C语言编写的COM),尽管我没有任何方便的链接供我担心。

也就是说,C和C ++非常接近。实际上,C ++最初是C的超集-每个有效的C程序都应该是有效的C ++程序。现在,他们并没有完全做到这一点,但是差异是微妙的,并且在大多数情况下不应该使您感到困扰。因此,您不妨继续使用C ++编写代码,只使用一点C ++与COM接口。 C ++编译器应该可以接受。