为什么Windows中没有C ++? [英] Why no C++ in Windows itself?
问题描述
现在很长一段时间我正在使用Dependency Walker for Win32。并且
在System32中导航不同的Dll。找到我的目标API的文件夹
函数。我注意到的是,''几乎''所有系统.dll和
..exe
文件是用C而不是C ++编写的。如果C ++是一种功能强大的OO语言并且它比大型应用程序开发的C大得多,那么为什么微软在它的操作系统中使用了它? ?这是否存在兼容性问题
我不知道?或其他什么?
---
感谢您的评论
Herr Lucifer写道:现在很长一段时间我正在使用Dependency Walker for Win32。并且在System32中导航通过不同的Dll。找到我的目标API
函数的文件夹。我注意到的是,''几乎''所有系统.dll和
.exe
文件都是用C而不是C ++编写的。如果C ++是一种功能强大的OO语言,并且它对于大型应用程序开发而言比C大得多,那么为什么微软在其操作系统中没有使用它呢?是否存在兼容性问题
我不知道?或其他什么?
你怎么知道它们是用C语写的?您是否检查了
汇编程序以查找是否存在C ++启动代码(例如运行全局对象构造函数的
)?请记住,C ++代码不需要动态地链接到C ++运行库,并且它不需要向外界提供C ++
接口。
Tom
GDI系统至少用C ++编写。
Herr Lucifer写道:现在很长一段时间我正在使用Dependency Walker for Win32。并且在System32中导航通过不同的Dll。找到我的目标
API函数的文件夹。我注意到的是,''几乎''所有系统.dll
和.exe
文件都是用C而不是C ++编写的。如果C ++是一种强大的OO语言,并且它比大型应用程序开发的C大得多,那么为什么
还没有Microsoft在其操作系统中使用它?这里有兼容性的
问题我不知道吗?还是其他什么?
你怎么知道它们是用C语言编写的?您是否检查了汇编程序以查找是否存在C ++启动代码(例如运行全局对象构造函数)?请记住,C ++代码不需要与C ++运行时动态链接,也不需要向外界提供C ++
接口。
Tom>
我不知道你对C ++的看法,但在最早的定义中,C ++被称为C with classes。所以如果那里没有课,那就没有C ++
代码;它只是纯粹的C ....
PS:依赖性walker(版本2.1.36668)能够在他们的C ++中显示他们的类中的函数。看看你是否有VS.NET 2003
-----------------------
" ;汤姆威德默 <到******** @ hotmail.com>在消息中写道
你怎么知道它们是用C语言编写的?您是否检查了汇编程序以查找是否存在C ++启动代码(例如运行全局对象构造函数)?请记住,C ++代码不需要与C ++运行时动态链接,也不需要向外界提供C ++
接口。
Tom>
It is a long time now that I am using "Dependency Walker for Win32" and
navigating through different Dlls in "System32" folder to find my target API
functions. The thing I have noticed is that, ''almost'' all system .dll and
..exe
files are written in C and not C++. If C++ is a powerful OO language and
it''s much greater than C for large application development, then why haven''t
Microsoft used it in its operating system? Is there a compatibility issue
here that I am not aware of? Or something else?
---
Thanks for comments
Herr Lucifer wrote:It is a long time now that I am using "Dependency Walker for Win32" and
navigating through different Dlls in "System32" folder to find my target API
functions. The thing I have noticed is that, ''almost'' all system .dll and
.exe
files are written in C and not C++. If C++ is a powerful OO language and
it''s much greater than C for large application development, then why haven''t
Microsoft used it in its operating system? Is there a compatibility issue
here that I am not aware of? Or something else?
How can you tell that they are written in C? Have you examined the
assembler to look for the presence of C++ startup code (such as the
running of global object constructors)? Remember that C++ code need not
dynamically link with the C++ runtime, and it need not present a C++
interface to the outside world.
Tom
The GDI system is written in C++, at least.
Herr Lucifer wrote:It is a long time now that I am using "Dependency Walker for Win32" and
navigating through different Dlls in "System32" folder to find my target API functions. The thing I have noticed is that, ''almost'' all system .dll and .exe
files are written in C and not C++. If C++ is a powerful OO language and
it''s much greater than C for large application development, then why haven''t Microsoft used it in its operating system? Is there a compatibility issue here that I am not aware of? Or something else?
How can you tell that they are written in C? Have you examined the
assembler to look for the presence of C++ startup code (such as the
running of global object constructors)? Remember that C++ code need not
dynamically link with the C++ runtime, and it need not present a C++
interface to the outside world.
Tom
I don''t know what you think of C++, but in its earliest definition, C++ was
called "C with classes". So if there is no class in there, there is no C++
code; it is just pure C....
PS: dependency walker (version 2.1.36668) is able to show functions inside
their classes if their are C++. Take a look if you have VS.NET 2003
-----------------------
"Tom Widmer" <to********@hotmail.com> wrote in message
How can you tell that they are written in C? Have you examined the
assembler to look for the presence of C++ startup code (such as the
running of global object constructors)? Remember that C++ code need not
dynamically link with the C++ runtime, and it need not present a C++
interface to the outside world.
Tom
这篇关于为什么Windows中没有C ++?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!