80 likes | 142 Views
Explore the origins, evolution, and key features of C++ programming language, from its development at Bell Labs in 1967 to its popularity in the 90s. Discover its role as a general-purpose language and its advantages in low-level control and high-level power.
E N D
First Impression C++ ?
History of C++ • 1967: "B" and BCPL developed (typeless) • 1972: C language developed at Bell Labs • Dennis Ritchie wrote C for Unix OS • Needed C for work with Unix • late 70s: C becomes popular for OS development by many vendors • Many variants of the language developed • ANSI standard C in 1987-89
History of C++ (continued) • early 80s: Bjarne Stroustrup developed C++ in 1979 at Bell Labs as an enhancement to the C programming language and named it "C with Classes". In 1983 it was renamed to C++. • 90s: continued evolution of the language and its applications • preferred language for OS and low level programming • popular language for application development • low level control and high level power
Conceptually what is C++ • Alternatives: • is it C, with lots more options and features? • is it an OO programming language with C as its core? • is it a development environment? • On most systems it is a development environment, language, and library, used for both procedural and object oriented programming, that can be customized and extended as desired • Actually : C++ is a general-purpose programming language with high-level and low-level capabilities, that’s why sometimes regarded as middle level language.
Summary from The Design and Evolution of C++ by Bjarne Stroustrup • C++ is designed to be a statically typed. • C++ is designed to directly and comprehensively support multiple programming styles. • C++ is designed to be as compatible with C as possible. • C++ avoids features that are platform specific or not general purpose. • C++ does not incur overhead for features that are not used. • C++ is designed to function without a sophisticated programming environment.
Advantages of C++ • Available on most machines • Can get good performance • Can get small size • Can manage memory effectively • Can control everything • Good supply of programmers • Suitable for almost any type of program (from systems programs to applications)
Disadvantages of C++ • Tends to be one of the less portable languages • Complicated!!! • 40 operators, intricate precedence, pointers, etc. • can control everything • many exceptions and special cases • tremendous libraries both standard, vendor specific, and available for purchase, but all are intricate • Aspects above can result in high cost, maintenance and reliability problems