Posted on 5th September 2009No Responses
C++ and Its Features

C++ (pronounced as “C plus plus”) is a general purpose multi-paradigm programming language. It was developed by Bjarne Stroustrup starting in 1979 at Bell Labs as an enhancement to the C programming language and originally named “C with Classes”. It was renamed to C++ in 1983.

C++ is widely used in the software industry, and remains one of the most popular languages ever created. Some of its application domains include systems software, application software, device drivers, embedded software, high-performance server and client applications, and entertainment software such as video games.
The language is an enhanced version of its former i.e. C language. The enhancements done are like first adding classes, then virtual functions, operator overloading, multiple Inheritance, Templates, and exception handling among other features.
C++ comprises features of both high level and low level language.We give very simple definition of C++ as:-
C++ is an Object Oriented Programming (OOP) Language that is viewed by many as the best Languages for creating large scales applications. C++ is a superset of “C” Language. But when we compared C++ with C then we find that C++ provides us some extra features that makes the programming easy in comparison to C the Mother Language.

HISTORY

The development of the language was originally started in 1979 at Bell Labs by Bjarne Stroustrup. At that time the development was just an idea of creating a language from Stroustrup’s experience in programming for his Ph.D thesis. Stroustrup found that “Simula”(The development tool used before the C language was launched) had features that were very helpful for large software development, but the language was too slow for practical use. Stroustrup set out to enhance the C language with Simula-like features. C was chosen because it was general-purpose, fast, portable and widely used.

Rules Governing the C++ Language

• C++ is designed to be a statically typed, general-purpose language that is as efficient and portable as C
• C++ is designed to directly and comprehensively support multiple programming styles (procedural programming, data abstraction, object-oriented programming, and generic programming)
• C++ is designed to give the programmer choice, even if this makes it possible for the programmer to choose incorrectly
• C++ is designed to be as compatible with C as possible, therefore providing a smooth transition from C
• C++ avoids features that are platform specific or not general purpose
• C++ does not incur overhead for features that are not used (the “zero-overhead principle”)
• C++ is designed to function without a sophisticated programming environment

FEATURES OF C++

C++ inherits most of C’s syntax and the C preprocessor. The following is Bjarne Stroustrup’s version’s of the Hello world program which uses the C++ standard library stream facility to write a message to standard output:
#include
int main()
{
std::cout << “Hello, world!\n”;
}
The above given program will print simply “Hello World” in the output screen of the C++ runtime environment. Following are the features that makes the language one of the most powerful developing tool in the world till date. Theses are the Features of C++:-
Operators & Operators overloading
Templates
Objects
Class
Encapsulation
Inheritance
Polymorphism
Virtual Member Functions

• What Is the Difference Between C & C++

One commonly encountered difference is that C allows implicit conversion from void* to other pointer types, but C++ does not. Another common portability issue is that C++ defines many new keywords, such as new and class, that may be used as identifiers (e.g. variable names) in a C program. Some incompatibilities have been removed by the latest (C99) C standard, which now supports C++ features such as // comments and mixed declarations and code. On the other hand, C99 introduced a number of new features that C++ does not support, such as variable-length arrays, native complex-number types, designated initializers and compound literals. However, at least some of the new C99 features will likely be included in the next version of the C++ standard, C++0x.
In order to intermix C and C++ code, any function declaration or definition that is to be called from/used both in C and C++ must be declared with C linkage by placing it within an extern “C” { … } block. Such a function may not rely on features depending on name mangling (i.e., function overloading).

• Scope of C++

The scope of C++, the topic is worth talking because this the language that is now known as a standard and the base of all the languages used anywhere in the world. A software developer starts developing his projects at first only on this language then after he applies the other high level languages to his project. As we know that it is user friendly, easy to understand, easy to implement and provides a lots of flexibility. So I don’t think that the language will ever be treated as outdated.

Popularity: 1% [?]

Share and Enjoy:
  • Print
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • BlinkList
  • blogmarks
  • BlogMemes Fr
  • BlogMemes Sp
  • Blogosphere News
  • blogtercimlap
  • co.mments
  • connotea
  • Current
  • Design Float
  • Diigo
  • DotNetKicks
  • DZone
  • eKudos
  • email
Comments
Leave a Response