Introduction
"Comparison between Visual C + + and Delphi" recently discussed in the CSDN forum is very hot, this article will be a programmer's point of view, from the technical level, function, performance, ease of use, stability, development history and prospects, such as Visual c++6 and Delphi5 as the representative, Compare the pros and cons of Visual C + + and Delphi as objectively as possible, involving languages, application frameworks, controls, compilation and connectivity, integration interfaces, debugging, COM, database development, and more. This article will also make some suggestions on how to choose to use these two development tools.
It is worth mentioning that, because C++builder and Delphi for Inprise company products, they are in addition to the use of language, the remaining features are almost the same. Therefore, this paper has a reference value to C++builder programmers and learners.
Language: Existence is reasonable
First of all, the statement is often confused: VC and Delphi itself is not language, but the development platform. The languages they use are slightly expanded C/s + + and object Pascal respectively. I often see people on the Internet to ask should learn C/s or VC, this question is very good answer: If you learn VC you have to learn C/s, or you learned VC also learned C + +.
So, let's take a closer look at the pros and cons of C + + and Object Pascal. Some people think that the object Pascal is "The Toy language", C + + is "the Specialized language", this is not correct. From the language itself, Object Pascal and C + + belong to the same heavyweight. They are all supporting object-oriented languages, all rooted in the "long history" of the process-oriented language. C + + is the development of the C., Object Pascal evolved from Pascal. They all have a strong flexibility, have their own strengths and shortcomings. For example, Object Pascal does not support multiple inheritance, templates, operator overloading, inline function definitions, preprocessing, macros, global static class variables, nested class definitions, and so on, which are supported by C + +. but also C + + does not support the fictitious creation function of Object Pascal, procedure nesting, built-in collection type, built-in string type, "finally" constructs and so on, in Rtti aspect Object Pascal also better than C + +. But these are not important, because the same purpose can be achieved in other ways, such as C + + can support collections through class extensions, strings, Object Pascal can be "interface" multiple inheritance, and so on. The point is that both can do a good job on the task at hand, and that's enough.