1 / 14

What is C++

What is C++ . Introduction to the C++ Programming Language. Outline. History What is C++ How does C++ relate to other OO languages Types of applications for C++ Components of MS’s Visual C++ 6.0 Advantages / Disadvantages of C++. History of C++. 1967: "B" and BCPL developed (typeless)

emily
Download Presentation

What is C++

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. What is C++ Introduction to the C++ Programming Language

  2. Outline • History • What is C++ • How does C++ relate to other OO languages • Types of applications for C++ • Components of MS’s Visual C++ 6.0 • Advantages / Disadvantages of C++

  3. 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

  4. History of C++ (continued) • early 80s: Bjarne Stroustrup adds OO features to C creating 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

  5. 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

  6. Versions of C++ • ANSI C++ • Microsoft C++ (MS Visual C++ 6.0) • Other vendors: Borland, Symantec, Turbo, … • Many older versions (almost annual) including different version of C too • Many vendor specific versions • Many platform specific versions

  7. Characteristics of C++ as a Computer Language • Procedural • Object Oriented • Extensible • ...

  8. Other OO Languages • Smalltalk • pure OO language developed at PARC • Java • built on C/C++ • objects and data types • Eifel and others

  9. What you can do with C++ • Apps (standalone, Web apps, components) • Tiered apps • Active desktop (Dynamic HTML, incl Web) • Access to MFC • Create new controls • Create apps with "look and feel" of IE4 • ActiveX documents (charts, graphs, etc.) • Data access (OLE, e-mail, files, ODBC) • Integrate components w/ other languages

  10. Microsoft’s C++ • Development Environment • project mgmt, editor, debugging tools, user interface to tools • Visual Studio 6.0 • Language ( • compiler, linker, loader, etc. • Visual C++ 6.0 • Libraries • std libraries, iostream, iomanip, stdio, time, string, math, etc. • Standard Template Library (STL)

  11. 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

  12. 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)

  13. Steps in Developing a C++ Program • Plan • Edit (uses integrated editor) • Compile * (converts to binary) • Link * (resolves external references) • Load (places into memory) • Run * (transfers control, executes) * IDE reports errors at this step; must fix them

  14. Objectives for a C++ System • Solves correct problem • Correct solution ************ but also • Clear documentation (internal and external) • Understandable code • Maintainable and extendable system • Reusable code ************ how about succinct code?? performance??

More Related