You are on page 1of 2

Published by Juan Soulie

C++ Language FAQ


Last update on Mar 3, 2008 at 9:46pm UTC

Frequently Asked Questions

What is C++?
C++ is a programming language. It literally means "increased C", reflecting its nature
as an evolution of the C language.
Is it necessary to already know another programming language before learning C++?
Not necessarily. C++ is a simple and clear language in its expressions. It is true that a
piece of code written with C++ may be seen by a stranger of programming a bit more
cryptic than some other languages due to the intensive use of special characters ({}
[]*&!|...), but once one knows the meaning of such characters it can be even more
schematic and clear than other languages that rely more on English words.
Also, the simplification of the input/output interface of C++ in comparison to C and
the incorporation of the standard template library in the language, makes the
communication and manipulation of data in a program written in C++ as simple as in
other languages, without losing the power it offers.
[dl]
How can I learn C++?
There are many ways. Depending on the time you have and your preferences. The
language is taught in many types of academic forms throughout the world, and can
also be learnt by oneself with the help of tutorials and books. The documentation
section of this Website contains an online tutorial to help you achieve the objective of
learning this language.
What is OOP: Object-oriented programming?
It is a programming model that treats programming from a perspective where each
component is considered an object, with its own properties and methods, replacing or
complementing strutured programming paradigm, where the focus was on procedures
and parameters.
Is C++ a propietary language?
No. No one owns the C++ language. Anyone can use the language royalty-free.
What is ANSI-C++?
ANSI-C++ is the name by which the international ANSI/ISO standard for the C++
language is known. But before this standard was published, C++ was already widely
used and therefore there is a lot of code out there written in pre-standard C++.
Referring to ANSI-C++ explicitly differenciates it from pre-standard C++ code, which
is incompatible in some ways.
How may I know if my compiler supports ANSI-C++?
The standard was published in 1998, followed by a revision in 2003. Some compilers
older than the standard implement already some of its features, and many newer
compilers don't implement all ANSI-C++ features. If you have doubts on whether
your compiler will be able to compile ANSI-C++ code, you can try to compile a piece
of code with some of the new features introduced mainly after the publication of the
standard. For example, the following code fragment uses the bool type, and uses
namespaces and templates.
#include <iostream> ANSI OK
using namespace std;
template <class T>
bool ansisupported (T x) { return true; }
int main() {
if (ansisupported(0)) cout << "ANSI OK";
return 0;
}
If your compiler is able to compile this program, you will be able to compile most of
the existing ANSI-C++ code.
How can I make windowed programs?
You need a C++ compiler that can link code for your windowing environment
(Windows, XWindow, MacOS, ...). Windowed programs do not generally use the
console to communicate with the user. They use a set of functions or classes to
manipulate windows instead, which are specific to each environment. Anyway the
same principles apply both for console and windowed programs, except for
communicating with the user.
What is Visual C++? And what does "visual programming" mean?
Visual C++ is the name of a C++ compiler with an integrated environment from
Microsoft. It includes special tools that simplify the development of large applications
as well as specific libraries that improve productivity. The use of these tools is
generally known as visual programming. Other manufacturers also develop these
types of tools and libraries, like Borland C++, Visual Age, etc...

You might also like