Sinopsis
C++ feels like a new language. That is, I can express my ideas
more clearly, more simply, and more directly in C++11 than I could in C++98.
Furthermore, the resulting programs are better checked by the compiler and run
faster.
Like other modern languages, C++ is large and there are a large
number of libraries needed for effective use. This thin book aims to give an
experienced programmer an idea of what constitutes modern C++. It covers most
major language features and the major standard-library components. This book can
be read in just a few hours but, obviously, there is much more to writing good
C++ than can be learned in a day. However, the aim here is not mastery, but to
give an overview, to give key examples, and to help a programmer get started.
For mastery, consider my The C++ Programming Language, Fourth
Edition (TC++PL4) [Stroustrup,2013]. In fact, this book is an extended
version of the material that constitutes Chapters
2-5 of TC++PL4, also entitled A Tour of C++. I have added extensions and improvements to
make this book reasonably self-contained. The structure of this tour follows
that of TC++PL4, so it is easy to find supplementary material. Similarly, the
exercises for TC++PL4 that are available on my Web site (www.stroustrup.com) can be used to support
this tour.
The assumption is that you have programmed before. If not,
please consider reading a textbook, such as Programming:
Principles and Practice Using C++ [Stroustrup,2009], before continuing
here. Even if you have programmed before, the language you used or the
applications you wrote may be very different from the style of C++ presented
here.
As an analogy, think of a short sightseeing tour of a city, such
as Copenhagen or New York. In just a few hours, you are given a quick peek at
the major attractions, told a few background stories, and usually given some
suggestions about what to see next. You do not know the
city after such a tour. You do not understand all you
have seen and heard. You do not know how to navigate the
formal and informal rules that govern life in the city. To really know a city,
you have to live in it, often for years. However, with a bit of
luck, you will have gained a bit of an overview, a notion of what is special
about the city, and ideas of what might be of interest to you. After the tour,
the real exploration can begin.
This tour presents the major C++ language features as they
support programming styles, such as object-oriented and generic programming. It
does not attempt to provide a detailed, reference-manual, feature-by-feature
view of the language. Similarly, it presents the standard libraries in terms of
examples, rather than exhaustively. It does not describe libraries beyond those
defined by the ISO standard. The reader can search out supporting material as
needed. [Stroustrup,2009] and [Stroustrup,2012] are examples of such material,
but there is an enormous amount of material (of varying quality) available on
the Web. For example, when I mention a standard library function or class, its
definition can easily be looked up, and by examining the documentation of its
header (also easily accessible on the Web), many related facilities can be
found.
This tour presents C++ as an integrated whole, rather than as a
layer cake. Consequently, it does not identify language features as present in
C, part of C++98, or new in C++11. Such information can be found in Chapter 14 (History and Compatibility).
0 komentar:
Posting Komentar