-
December 30th, 2018, 09:45 AM
#1
Difference between Visual C++ and Non Visual C++?
There are two subforums in this forum, one for "Visual C++" and another for "Non-Visual C++"
Description for Visual C++ is: 'Ask questions about Windows programming with Visual C++ and help others by answering their questions."
What is "Visual C++"? Visual C++ the compiler??
-
December 30th, 2018, 12:23 PM
#2
Re: Difference between Visual C++ and Non Visual C++?
Yes, Visual C++ the compiler, actually Visual Studio Visual C++, the IDE (Integrated Development Environment). If you are coding using Visual C++, you generally will ask questions in this forum.
Generally, if you are not using Visual C++, you would not ask questions in the "Visuall C++ Programming" forum.
A couple of exceptions:
1) if you are coding for the WinAPI and aren't using a framework such as MFC or ATL, you would ask in the "C++ and WinAPI" forum.
2) if you are asking ANSI compliant data stuctures and algorithm questions, you would ask in the "C++ (non-Visual C++ Issues)" forum.
Last edited by Arjay; December 30th, 2018 at 12:27 PM.
-
December 31st, 2018, 02:45 AM
#3
Re: Difference between Visual C++ and Non Visual C++?
Originally Posted by Numb
What is "Visual C++"?
Visual C++ is a C++ development environment from Microsoft that was introduced in 1993 and is now part of Visual Studio.
I use these rules of thumb:
If a C++ question does not implicate Microsoft then ask it at the non-Visual C++ forum (even if you're using Visual C++).
If a C++ question doesn't even implicate C++ then ask it at the Algorithms & Data Structures forum.
Otherwise put it where you think it belongs and if you have no idea pick the Visual C++ forum. If it turns out completely wrong a nice moderator will move it for you.
Last edited by wolle; December 31st, 2018 at 03:17 AM.
-
January 1st, 2019, 02:54 AM
#4
Re: Difference between Visual C++ and Non Visual C++?
Ugh Visual Studios is just a developing environment right? Doesn't it follow C++ standard? What's the difference between Visual C++ and general C++ in terms of code?
When we say windows programming or WinApi and all are we referring to <windows.h> the headerfile?
-
January 1st, 2019, 04:41 AM
#5
Re: Difference between Visual C++ and Non Visual C++?
Visual Studio includes the IDE, the compiler(s), the debugger, the profiler etc. VS2017 certainly does follow the c++17 standard (it currently includes more of the standard than that of both gcc and clang). In terms of standard c++, there is no difference between Visual C++17 and general C++17. However, if say, you use the MFC framework, then this is specific to VS. If you have a query about the VS IDE, or configuration etc then this is specific to VS. VS users tend to post straight c++ questions to both the Visual c++ programming forum and the c++ forum. If you post to the 'wrong' forum, it doesn't matter that much as a mod will move it if needed. The forums are split like this to provide the maximum likely-hood of a suitable response from a guru. That's why there's also the separate WIN32 API forum, the c++/cli forum, the network forum etc etc.
All advice is offered in good faith only. All my code is tested (unless stated explicitly otherwise) with the latest version of Microsoft Visual Studio (using the supported features of the latest standard) and is offered as examples only - not as production quality. I cannot offer advice regarding any other c/c++ compiler/IDE or incompatibilities with VS. You are ultimately responsible for the effects of your programs and the integrity of the machines they run on. Anything I post, code snippets, advice, etc is licensed as Public Domain https://creativecommons.org/publicdomain/zero/1.0/ and can be used without reference or acknowledgement. Also note that I only provide advice and guidance via the forums - and not via private messages!
C++23 Compiler: Microsoft VS2022 (17.6.5)
-
January 1st, 2019, 05:10 AM
#6
Re: Difference between Visual C++ and Non Visual C++?
Originally Posted by Numb
Ugh Visual Studios is just a developing environment right?
Visual Studio is an IDE that supports multiple languages like Visual C++, C#, VB.NET, and F#. Each of the languages have their own editor, compiler and debugger (and linker if appropriate) and share the VS IDE.
Doesn't it follow C++ standard?
Yes, but Visual C++ has been around for over 20 years, so the newer the version, the more compliant it is. Google for it and you will find much info.
What's the difference between Visual C++ and general C++ in terms of code?
In the latest versions, not much. But straight code doesn't get you that far other than doing exercises. Most programs that do real work need to interact with the operating system. Along with the C++ part, Visual C++ offers the MFC and ATL frameworks that help you program on Windows.
When we say windows programming or WinApi and all are we referring to <windows.h> the headerfile?
No (although you generally include this header). It means you are interacting with the Windows OS by calling the WinAPI in your program. If you are displaying a window rather than a console screen, you are programming under a completely different paradigm. Check out wiki on windows programming for a better description.
-
January 1st, 2019, 05:41 AM
#7
Re: Difference between Visual C++ and Non Visual C++?
Originally Posted by Numb
Ugh Visual Studios is just a developing environment right? Doesn't it follow C++ standard? What's the difference between Visual C++ and general C++ in terms of code?
There is no such a thing like "general C++". There are programming language C++ and product Visual C++.
As a language, C++ is versioned and thus complies to a number of standards reflecting evolution of the language.
As a product, Visual C++ is versioned too and includes a particular C++ compiler implementing a particular C++ standard or a subset of the one. Additionally, the compiler is bundled with particular version of IDE along with specific development toolset, a set of Platform SDKs and a set of C++ libraries for Windows app development (MFC/ATL/STL), courtesy of MS.
When we say windows programming or WinApi and all are we referring to <windows.h> the headerfile?
Strictly saying, Platform SDK is more correct term in this case, as windows.h is only a little part of the SDK.
Best regards,
Igor
-
January 2nd, 2019, 04:31 AM
#8
Re: Difference between Visual C++ and Non Visual C++?
Originally Posted by Numb
What's the difference between Visual C++ and general C++ in terms of code?
As has been mentioned, Visual C++ (part of Visual Studio) is a commercial (even though there's a free version available) tool from Microsoft. "General C++" on the other hand is a document published by the ISO C++ standards committee.
Microsoft takes C++ standard compliance very seriously. In fact the current chairman of the C++ committee, Herb Sutter, is a Microsoft employee (or at least strongly affiliated with Microsoft). Herb is considered one of the top gurus of C++.
https://blogs.msdn.microsoft.com/vcb...rom-microsoft/
https://herbsutter.com/
So you can rest assured that Visual C++ is very compliant but that doesn't mean that mere using Visual C++ is a guarantee that your code will be compliant (and thus fully portable). There are things you'll want to do that aren't even covered by the standard and sometimes you're offered non-standard ways of doing things as an option to using the standard. You simply will have to know what you're doing.
One of the most important tasks of the standards committee is to ensure that C++ stays relevant in the future. Here's an interesting document straight from the horse's mouth about the direction of C++,
http://www.open-std.org/jtc1/sc22/wg...18/p0939r1.pdf
Last edited by wolle; January 2nd, 2019 at 08:16 AM.
-
January 3rd, 2019, 08:20 AM
#9
Re: Difference between Visual C++ and Non Visual C++?
So I should not post regular C++ questions in this subforum? Is there consequence to writing to the wrong subforum?
-
January 3rd, 2019, 08:54 AM
#10
Re: Difference between Visual C++ and Non Visual C++?
Originally Posted by Numb
So I should not post regular C++ questions in this subforum? Is there consequence to writing to the wrong subforum?
No. If a mod judges it to be in the wrong forum, they'll just move it.
All advice is offered in good faith only. All my code is tested (unless stated explicitly otherwise) with the latest version of Microsoft Visual Studio (using the supported features of the latest standard) and is offered as examples only - not as production quality. I cannot offer advice regarding any other c/c++ compiler/IDE or incompatibilities with VS. You are ultimately responsible for the effects of your programs and the integrity of the machines they run on. Anything I post, code snippets, advice, etc is licensed as Public Domain https://creativecommons.org/publicdomain/zero/1.0/ and can be used without reference or acknowledgement. Also note that I only provide advice and guidance via the forums - and not via private messages!
C++23 Compiler: Microsoft VS2022 (17.6.5)
-
January 3rd, 2019, 09:35 PM
#11
Re: Difference between Visual C++ and Non Visual C++?
Originally Posted by Numb
So I should not post regular C++ questions in this subforum? Is there consequence to writing to the wrong subforum?
Yes, you will be fined.
-
January 28th, 2019, 03:06 AM
#12
Re: Difference between Visual C++ and Non Visual C++?
C++ is a standardized language. Visual C++ is a product that more or less implements that standard. You can write portable C++ using Visual C++, but you can also use Microsoft-only extensions that destroy your portability but enhance your productivity. This is a trade-off. You have to decide what appeals most to you.
-
February 21st, 2019, 12:55 PM
#13
Re: Difference between Visual C++ and Non Visual C++?
Good question! I haven't even thought about it before! Here I found a similar discussion. Maybe you will find something useful.
https://stackoverflow.com/questions/...c-and-visual-c
-
February 21st, 2019, 07:19 PM
#14
Re: Difference between Visual C++ and Non Visual C++?
That stackoverflow discussion is 5 years old or older. With each version of Visual C++, it gets more C++ standards compliant. It the recent versions, it gets to be hard to use non-compliant MS extensions without knowing about it.
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|