C++ Introduction

0
18
  1. C++ is one of the predominant languages for the development of all kind of technical and commercial software.
  2. C++ was developed by Bjarne Stroustrup, as an extension to the C language.
  3. A Cross-platform language that can be used to create high-performance applications.
  4. It is a simple general-purpose programming language
  5. It is developed as an enhancement of the C language to include object-oriented paradigm.
  6. It is an imperative and a compiled language.
  7. C++ is a middle-level language rendering it the advantage of programming low-level (drivers, kernels) and even higher-level applications (games, GUI, desktop apps etc.).
  8. The basic syntax and code structure of both C and C++ are the same.
  9. ++ of C++ is incremental operator to tell that C++ is incremental to C.
  10. C++ introduces Object-Oriented Programming, not present in C. Like other things, C++ supports the four primary features of OOP: encapsulation, polymorphism, abstraction, and inheritance.
  11. C++ got the OOP features from Simula67 Programming language.
  12. A function is a minimum requirement for a C++ program to run.(at least main() function)
  13. C++ gives programmers a high level of control over system resources and memory.
  14. The language was updated 3 major times in 2011, 2014, and 2017 to C++11, C++14, and C++17.

Language Features

  1. Simple: It is a simple language in the sense that programs can be broken down into logical units and parts, has a rich library support and a variety of data-types.
  2. Machine Independent but Platform Dependent: A C++ executable is not platform-independent (compiled programs on Linux won’t run on Windows), however they are machine independent.
  3. Mid-level language: It is a mid-level language as we can do both systems-programming (drivers, kernels, networking etc.) and build large-scale user applications (Media Players, Photoshop, Game Engines etc.)
  4. Rich library support: Has a rich library support (Both standard ~ built-in data structures, algorithms etc.) as well 3rd party libraries (e.g. Boost libraries) for fast and rapid development.
  5. Speed of execution: C++ programs excel in execution speed. Since, it is a compiled language, and also hugely procedural. Newer languages have extra in-built default features such as garbage-collection, dynamic typing etc. which slow the execution of the program overall. Since there is no additional processing overhead like this in C++, it is blazing fast.
  6. Pointer and direct Memory-Access: C++ provides pointer support which aids users to directly manipulate storage address. This helps in doing low-level programming (where one might need to have explicit control on the storage of variables).
  7. Object-Oriented: One of the strongest points of the language which sets it apart from C. Object-Oriented support helps C++ to make maintainable and extensible programs. i.e. Large-scale applications can be built. Procedural code becomes difficult to maintain as code-size grows.
  8. Compiled Language: C++ is a compiled language, contributing to its speed.

Why Use C++

  1. C++ is one of the world’s most popular programming languages.
  2. C++ can be found in today’s operating systems, Graphical User Interfaces, and embedded systems.
  3. C++ is an object-oriented programming language which gives a clear structure to programs and allows code to be reused, lowering development costs.
  4. C++ is portable and can be used to develop applications that can be adapted to multiple platforms.
  5. C++ is fun and easy to learn. C++ is close to C# and Java, it makes it easy for programmers to switch to C++ or vice versa

Applications of C++

  1. Operating Systems & Systems Programming. e.g. Linux-based OS (Ubuntu etc.)
  2. Browsers (Chrome & Firefox)
  3. Graphics & Game engines (Photoshop, Blender, Unreal-Engine)
  4. Database Engines (MySQL, MongoDB, Redis etc.)
  5. Cloud/Distributed Systems
Previous articleU.S. policy toward South Asia: Past, present, and future
Next articleC++ Overview
Vishal Bhandari is an admin, editor and writer of this portfolio. He writes about himself, his interests, hobbies, activities. He manages many articles about tech, finance, history and geopolitics on his portfolio.

LEAVE A REPLY

Please enter your comment!
Please enter your name here