C++

From WikiMD's Food, Medicine & Wellness Encyclopedia

BjarneStroustrup

C++ is a high-level programming language developed by Bjarne Stroustrup starting in 1979 at Bell Labs. C++ extends the C programming language with object-oriented programming features, including classes and templates, making it a powerful language for system software, application software, device drivers, embedded software, high-performance server and client applications, and entertainment software such as video games. It is considered an intermediate-level language, as it encapsulates both high- and low-level language features.

History[edit | edit source]

The development of C++ began as an enhancement to the C programming language to support object-oriented programming (OOP). Stroustrup wanted to create a language that had the efficiency and flexibility of C but provided higher-level features for program organization. C++ was originally called "C with Classes" but was renamed C++ in 1983, with the ++ operator in C incrementing a value. The first commercial implementation of C++ was released in October 1985.

C++ has undergone several updates and revisions over the years, with the standardization process being managed by the International Organization for Standardization (ISO). The first standardized version of C++ was released in 1998, known as C++98. Subsequent updates include C++03, C++11, C++14, C++17, and C++20, each adding improvements and new features to the language.

Features[edit | edit source]

C++ is known for its features that support a variety of programming styles including procedural, object-oriented, and generic programming. Key features include:

  • Classes and Objects: The cornerstone of OOP, allowing data and functions to be encapsulated together in an object.
  • Templates: Enable generic programming by allowing functions and classes to operate with generic types.
  • Memory Management: C++ supports both automatic and manual memory management, but unlike some languages, it does not have garbage collection.
  • Multiple Inheritance: Allows a class to inherit from more than one base class.
  • Operator Overloading: Allows custom implementation of operations for user-defined types.
  • Standard Template Library (STL): A collection of classes and functions for common algorithms, data structures, and iterators.

Applications[edit | edit source]

C++ is used in a wide range of applications. It is particularly popular in systems software, application software, high-performance servers, and client applications. Notable applications of C++ include operating systems (such as parts of Microsoft Windows), major parts of popular web browsers (like Google Chrome and Mozilla Firefox), and the development of many video games and game engines.

Standardization[edit | edit source]

The standardization of C++ is overseen by the ISO, specifically by the ISO/IEC JTC1/SC22/WG21 committee, also known as the C++ Standards Committee. The standardization process ensures that C++ remains a stable, backwards-compatible language while also evolving to meet the needs of modern software development.

Future Directions[edit | edit source]

The future of C++ is focused on improving the language's safety, concurrency, and simplicity. The C++ Standards Committee continues to work on these areas for future versions of the language, with a strong emphasis on maintaining backward compatibility with existing C++ code.

This article is a stub.

Help WikiMD grow by registering to expand it.
Editing is available only to registered and verified users.
About WikiMD: A comprehensive, free health & wellness encyclopedia.

Wiki.png

Navigation: Wellness - Encyclopedia - Health topics - Disease Index‏‎ - Drugs - World Directory - Gray's Anatomy - Keto diet - Recipes

Search WikiMD


Ad.Tired of being Overweight? Try W8MD's physician weight loss program.
Semaglutide (Ozempic / Wegovy and Tirzepatide (Mounjaro) available.
Advertise on WikiMD

WikiMD is not a substitute for professional medical advice. See full disclaimer.

Credits:Most images are courtesy of Wikimedia commons, and templates Wikipedia, licensed under CC BY SA or similar.


Contributors: Prab R. Tumpati, MD