青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

天行健 君子當自強而不息

C++, An Overview

There are two primary aspects to the programs we write

  1. A collection of algorithms (that is, the programmed instructions to solve a particular task)

  2. A collection of data against which the algorithms are run to provide each unique solution

These two primary program aspects, algorithms and data, have remained invariant throughout the short history of computing. What has evolved is the relationship between them. This relationship is spoken of as a programming paradigm.

In the procedural programming paradigm, a problem is directly modeled by a set of algorithms. A check-out/check-in system for loan materials of a public library, such as books, videos, and so on, is represented as a series of procedures, the two central procedures being the checking-out and checking-in of library materials. The data is stored separately, accessed either at a global location or by being passed into the procedures. Three prominent procedural languages are FORTRAN, C, and Pascal. C++ also supports procedural programming. Individual procedures, such as check_in(), check_out(), overdue(), fine(), and so on, are referred to as functions. Part III, Procedural-Based Programming, focuses on the support C++ provides for the procedural programming paradigm, with an emphasis on functions, function templates, and generic algorithms.

In the 1970s, the focus of program design shifted from the procedural paradigm to that of abstract data types (now generally referred to as object-based programming). In this paradigm, a problem is modeled by a set of data abstractions. In C++ we refer to these abstractions as classes. Our library check-out system, for example, under this paradigm is represented as the interaction between object instances of classes such as Book, Borrower, DueDate (an aspect of Time), and the inevitable Fine (an aspect of Money), representing the library abstractions. The algorithms associated with each class are referred to as the class's public interface. The data is privately stored within each object; access of the data is hidden from the general program. Three programming languages that support the abstract data type paradigm are CLU, Ada, and Modula-2. Part IV, Object-Based Programming, illustrates and discusses the support C++ provides for the abstract data type programming paradigm.

Object-oriented programming extends abstract data types through the mechanisms of inheritance (a "reuse" of an existing implementation) and dynamic binding (a reuse of an existing public interface). Special type/subtype relationships between previously independent types are now provided. A book, videotape, recording, and children's puppet are each a kind of library material, although each has its own check-out and check-in policy. The shared public interface and private data are placed in an abstract LibraryMaterial class. Each specific library material class inherits the shared behavior from the LibraryMaterial abstract class and need provide only the algorithms and data that support its behavior. Three prominent languages supporting the object-oriented paradigm are Simula, Smalltalk, and Java. Part V, Object-Oriented Programming, focuses on the support C++ provides for the object-oriented programming paradigm.

C++ is a multiparadigm language. Although we think of it primarily as an object-oriented language, it also provides support for procedural and object-based programming. The benefit is that we are able to provide a solution best suited to the problem ?in practice, no one paradigm represents a best solution to every problem. The drawback is that it makes for a larger and more complicated language.

In Part I, we present a quick tour of the entire C++ language. One reason for this is to provide a first introduction to the language features so that we can more freely reference aspects of the language before we fully treat them. For example, we don't look at classes in detail until Chapter 13, but if we waited until then to mention classes we would end up presenting a great many unrepresentative and largely irrelevant program examples.

A second reason for providing a breadth-first tour of the language is aesthetic. Unless you are exposed to the beauty and complexity of a Beethoven sonata or the exhilaration of a Scott Joplin rag, it is easy to become alternately impatient and bored with the apparent irrelevant detail of sharps, flats, octaves, and chords; but until those details are mastered, making music remains largely beyond our means. Much the same holds true with programming. Stepping through the maze of operator precedence or rules governing the standard arithmetic conversions is a necessary but necessarily tedious foundation to mastering programming in C++.

Chapter 1 provides a first introduction to the basic elements of the language: the built-in data types, variables, expressions, statements, and functions. It looks at a minimum legal C++ program, discusses the process of compiling our programs, briefly walks through the preprocessor, and takes a first look at support for input and output. It presents a number of simple but complete C++ programs that the reader is encouraged to compile and execute.

In Chapter 2, we walk through a procedural program, an object-based program, and then an object-oriented program implementation of an array ?that is, a numbered collection of elements of the same type. We then compare our array abstraction with the C++ standard library vector class and take a first look at the standard library generic algorithms. Along the way, we motivate and take a first peek at C++'s support for exception handling, templates, and namespaces. In effect, the entire language is introduced, although many of the details are deferred until later in the text.

Some readers may find portions of Chapter 2 rough going. Material is presented without the full explanation normally expected of a primer (the explanation is provided in subsequent chapters). If you should find yourself feeling overwhelmed or impatient at the level of detail, we recommend that you skim through or skip that portion, returning to it later when the material is more familiar. In Chapter 3, we begin the more traditional narrative pace, and the reader uncomfortable with Chapter 2 is recommended to start there.

posted on 2007-10-17 19:43 lovedday 閱讀(851) 評論(0)  編輯 收藏 引用 所屬分類: ▲ C++ Primer


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


公告

導航

統計

常用鏈接

隨筆分類(178)

3D游戲編程相關鏈接

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            好男人免费精品视频| 久久免费黄色| 久久免费高清| 麻豆久久久9性大片| 免费欧美网站| 亚洲裸体视频| 亚洲小视频在线| 久久国产精品高清| 国产精品高清在线观看| 亚洲精品一级| 中文久久精品| 久久九九精品99国产精品| 嫩草影视亚洲| 国产精品丝袜白浆摸在线| 国产午夜精品全部视频在线播放| 亚洲第一天堂av| 亚洲欧美日韩国产成人精品影院| 玖玖玖国产精品| 一区二区免费在线视频| 久久精品一区二区三区四区| 欧美日韩免费在线| 一区二区视频欧美| 亚洲女性裸体视频| 欧美不卡一卡二卡免费版| 亚洲视频观看| 欧美激情精品久久久久久大尺度| 国产日韩欧美亚洲| 亚洲五月六月| 亚洲大胆视频| 午夜精品久久久久久99热软件| 欧美国产日韩一区二区| 伊人色综合久久天天| 亚洲自拍偷拍一区| 亚洲国产成人精品视频| 久久精品夜色噜噜亚洲a∨ | 国产午夜精品麻豆| 亚洲免费观看| 麻豆精品91| 亚洲一二三区精品| 欧美日韩精品高清| 亚洲日韩第九十九页| 毛片一区二区三区| 久久国产精品久久国产精品 | 美女久久网站| 国产乱码精品一区二区三区av| 亚洲精品四区| 欧美jizzhd精品欧美巨大免费| 性感少妇一区| 国产亚洲精品久久久久动| 亚洲自拍电影| 亚洲综合社区| 国产日本欧美一区二区三区在线| 亚洲一级二级在线| 99re66热这里只有精品3直播| 欧美精品自拍| 亚洲性夜色噜噜噜7777| 一区二区三区视频免费在线观看| 欧美日韩国产一区二区三区| 中日韩男男gay无套| 99re6这里只有精品| 欧美日韩在线不卡| 亚洲一区二区三区四区五区午夜| 亚洲精品视频免费在线观看| 亚洲激情在线观看| 欧美高清一区二区| 亚洲精品一区二| 亚洲精品国偷自产在线99热| 欧美日韩色一区| 欧美一级在线播放| 欧美伊人久久久久久久久影院| 国产专区一区| 欧美国产大片| 欧美日韩一区在线播放| 西瓜成人精品人成网站| 欧美一区二区私人影院日本| 在线日韩一区二区| 日韩一区二区电影网| 国产乱码精品一区二区三区五月婷 | 国产日韩精品一区二区三区| 久久久精品免费视频| 久久婷婷影院| 99在线观看免费视频精品观看| 亚洲午夜精品久久| 一区视频在线| a91a精品视频在线观看| 好看的亚洲午夜视频在线| 亚洲激情成人网| 国产精品入口日韩视频大尺度| 麻豆精品一区二区av白丝在线| 欧美精品在线一区| 久久久久综合网| 欧美日韩精品免费观看视频| 久久gogo国模啪啪人体图| 免费看亚洲片| 久久久久国内| 国产精品久久激情| 亚洲国产精品va| 国产一区二区三区久久久久久久久| 91久久久久久久久久久久久| 国产自产精品| 中日韩视频在线观看| 亚洲日本欧美日韩高观看| 欧美在线免费看| 亚洲制服丝袜在线| 欧美成人精品激情在线观看| 久久久精品五月天| 国产精品久久久久久久久久久久久 | 久久人人97超碰国产公开结果| 亚洲午夜久久久久久久久电影院 | 最新亚洲视频| 免费观看亚洲视频大全| 久久亚洲精品伦理| 欧美日韩1区2区| 欧美韩日一区二区三区| 国产一区二区三区免费不卡| 亚洲精品免费一区二区三区| 伊人久久综合97精品| 欧美一进一出视频| 欧美一级专区免费大片| 国产精品久久久久久久久久三级 | 一区二区三区精品| 亚洲裸体俱乐部裸体舞表演av| 久久精品国产清高在天天线| 欧美在线播放| 国产欧美亚洲日本| 亚洲欧美日本精品| 欧美一区二区黄| 国产日韩精品在线| 欧美在线观看你懂的| 久久精品成人一区二区三区| 国产伦精品一区二区三区视频黑人 | 欧美日韩一卡二卡| 亚洲精品国产系列| 一本大道久久a久久精二百| 欧美国产精品v| 亚洲经典视频在线观看| 99精品国产在热久久| 欧美日韩在线一区二区| 在线视频你懂得一区| 亚洲欧美精品在线| 国产伦精品一区二区三区视频孕妇| 亚洲综合99| 久久亚洲电影| 亚洲日本中文| 欧美婷婷在线| 午夜久久美女| 免费中文字幕日韩欧美| 亚洲三级毛片| 欧美视频日韩视频| 亚洲欧美国产不卡| 女女同性精品视频| 日韩视频免费观看高清完整版| 欧美日韩综合视频| 西西人体一区二区| 欧美成人精品激情在线观看| 亚洲美女视频网| 国产精品亚洲а∨天堂免在线| 久久不射2019中文字幕| 欧美黄色影院| 午夜在线观看欧美| 亚洲高清一区二区三区| 欧美日韩亚洲国产一区| 欧美一区二区视频97| 亚洲国产精品va| 欧美在线影院在线视频| 亚洲国产日韩精品| 国产精品美女午夜av| 老司机精品视频网站| 中文网丁香综合网| 欧美成人一区二区| 欧美在线播放视频| 亚洲精品一区二区三区四区高清| 国产精品永久免费在线| 欧美成人午夜77777| 亚洲欧美综合国产精品一区| 亚洲精品国精品久久99热| 欧美日韩精品二区| 久久久久9999亚洲精品| 欧美在线视频a| 亚洲综合日本| 久久国产精品一区二区三区四区| 欧美在线日韩| 亚洲精选视频在线| 久久综合伊人77777麻豆| 亚洲综合色婷婷| 亚洲三级性片| 久久精品视频在线观看| 欧美一区二区三区视频| 亚洲国产日韩欧美在线99| 久久亚洲春色中文字幕| 欧美另类女人| 欧美成人中文| 欧美在现视频| 亚洲免费在线看| 99热在这里有精品免费| 影音先锋亚洲视频| 国产精品一区毛片| 欧美视频在线一区| 欧美精品在线观看| 欧美成人四级电影|