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

天行健 君子當(dāng)自強而不息

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 閱讀(862) 評論(0)  編輯 收藏 引用 所屬分類: ▲ C++ Primer


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


公告

導(dǎo)航

統(tǒng)計

常用鏈接

隨筆分類(178)

3D游戲編程相關(guān)鏈接

搜索

最新評論

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲欧美日韩一区在线观看| 91久久综合| 亚洲一区二区网站| 欧美吻胸吃奶大尺度电影| 亚洲美女性视频| 91久久精品www人人做人人爽| 欧美成人免费va影院高清| 亚洲国产一区视频| 亚洲日韩欧美视频一区| 欧美破处大片在线视频| 亚洲天堂免费观看| 亚洲你懂的在线视频| 国产午夜亚洲精品羞羞网站| 久久精品论坛| 老牛影视一区二区三区| 亚洲每日在线| 国产精品99久久久久久人| 国产精品专区第二| 欧美成人综合在线| 欧美午夜精品电影| 久久久五月天| 欧美成人免费观看| 午夜欧美大尺度福利影院在线看| 欧美一区永久视频免费观看| 亚洲国产精品福利| 99精品国产高清一区二区| 国产一级精品aaaaa看| 欧美成人福利视频| 国产精品久久国产愉拍 | 欧美精品在线一区二区三区| 在线视频欧美日韩精品| 欧美一区免费视频| 日韩一二三区视频| 欧美在线播放| 一区二区激情视频| 久久精品九九| 亚洲男人的天堂在线| 久久全球大尺度高清视频| 亚洲综合欧美日韩| 六月天综合网| 久久精品72免费观看| 欧美精品日韩一本| 久久一区二区三区四区五区| 欧美日韩另类视频| 鲁大师影院一区二区三区| 国产精品高潮呻吟| 欧美电影免费观看高清| 国产日韩精品在线| 一区二区三区日韩精品| 亚洲高清免费在线| 先锋影音网一区二区| 亚洲视频导航| 欧美激情精品久久久久久变态| 久久久久国产免费免费| 国产精品麻豆va在线播放| 亚洲丰满在线| 亚洲国产精品va在看黑人| 亚洲欧美在线一区| 欧美一区2区三区4区公司二百| 欧美精品一区三区| 亚洲电影免费在线| 亚洲国产精品久久久久秋霞蜜臀| 欧美一级久久久| 午夜亚洲精品| 国产精品日韩一区二区| 一区二区三区高清在线观看| 一本色道久久综合亚洲精品高清| 欧美jizz19hd性欧美| 欧美高清成人| 亚洲激情二区| 欧美大片在线观看一区二区| 欧美成人亚洲成人日韩成人| 一区二区三区在线视频播放| 久久精品一二三| 老色鬼精品视频在线观看播放| 国产一区二区三区日韩欧美| 欧美诱惑福利视频| 久久夜色精品国产欧美乱| 国产亚洲综合在线| 久久久综合激的五月天| 免费短视频成人日韩| 91久久综合亚洲鲁鲁五月天| 欧美xart系列高清| 亚洲精品中文字幕女同| 亚洲一区视频| 国产日本欧美一区二区三区在线| 亚洲欧美综合精品久久成人| 久久久av毛片精品| 亚洲国产精品高清久久久| 欧美成在线视频| 亚洲毛片在线观看| 亚洲欧美日韩在线观看a三区| 国产精品亚洲一区| 久久精品一二三| 亚洲国产高清自拍| 亚洲主播在线观看| 黄色成人av| 欧美区视频在线观看| 亚洲午夜伦理| 免费中文日韩| 亚洲天堂视频在线观看| 国产亚洲精品福利| 欧美激情精品久久久久久| 亚洲一区二区三区四区视频| 久久精品国产精品亚洲| 亚洲日本va午夜在线影院| 国产精品福利网| 久久久91精品国产| 日韩天堂在线观看| 久久久99国产精品免费| 日韩视频一区| 国产亚洲精品久久飘花| 欧美激情第8页| 性色av香蕉一区二区| 亚洲精品少妇| 美女网站久久| 欧美一区视频在线| 日韩小视频在线观看| 狠狠久久婷婷| 国产精品qvod| 欧美电影美腿模特1979在线看| 男人的天堂亚洲| 久久人人爽人人| 国产视频久久久久| 欧美日韩精品伦理作品在线免费观看| 亚洲欧美日韩一区二区三区在线| 亚洲第一色在线| 久久久www免费人成黑人精品 | 久久先锋影音av| 亚洲欧美另类综合偷拍| 亚洲青色在线| 欧美电影打屁股sp| 久久久www| 欧美一区91| 亚洲欧美在线看| 亚洲一区二区三区视频| 亚洲三级色网| 亚洲国产欧美在线人成| 国产综合第一页| 国产三级精品三级| 国产精品久久久久久av福利软件| 老牛嫩草一区二区三区日本| 久久激情五月丁香伊人| 久久久国产午夜精品| 久久激情视频免费观看| 国产精品国产自产拍高清av王其 | 欧美成人精品在线| 欧美怡红院视频| 欧美一级片一区| 午夜在线成人av| 欧美一区二区黄| 久久精品动漫| 欧美中文在线视频| 久久精品一二三区| 老牛嫩草一区二区三区日本| 久久综合999| 欧美jizz19hd性欧美| 欧美激情一区二区在线| 亚洲国产乱码最新视频| 亚洲国产另类精品专区| 亚洲日韩视频| 亚洲视频欧洲视频| 亚洲欧美精品在线观看| 欧美在线观看www| 亚洲欧美在线网| 久久久免费av| 欧美精品一区在线发布| 欧美日韩视频在线一区二区观看视频| 国模套图日韩精品一区二区| 亚洲九九精品| 久久久久久网| 欧美福利电影网| 99精品国产在热久久婷婷| 亚洲无线一线二线三线区别av| 亚洲欧美日韩高清| 久久视频在线看| 欧美精品国产| 国产亚洲网站| 亚洲精品中文在线| 性欧美xxxx大乳国产app| 久久久精品久久久久| 欧美激情视频一区二区三区在线播放| 最新亚洲电影| 性做久久久久久久久| 久久综合九色99| 国产精品高潮呻吟久久av黑人| 国产午夜精品理论片a级大结局| 亚洲国产成人在线| 午夜欧美精品久久久久久久| 蜜臀va亚洲va欧美va天堂| 日韩视频精品| 裸体素人女欧美日韩| 国产精品久久久久毛片软件 | 欧美电影在线播放| 国产精品一区二区在线观看不卡| 一区二区在线不卡| 香蕉亚洲视频| 日韩视频精品| 欧美大片国产精品| 国产色综合久久|