C++大学教程(第4版)(英文版)

副标题:无

作   者:戴特尔

分类号:

ISBN:9787121017599

微信扫一扫,移动浏览光盘

简介

本书是一本全英文的C++编程方面的优秀教程,它全面介绍了过程式编程与面向对象编程的原理与方法,细致地分析了各种性能问题、可移植性问题以及可能出错的情况。作者通过大量的示例程序,重点突出了利用UML进行面向对象的设计,引入了使用CGI的web应用开发,并且帮助学生创建真实世界的c++应用程序。本书无论从广度和深度上来说都非常全面,并且从基础概念讲起,同样适合没有编程经验的读者学习。通过可以实际使用的完整例子,可以使读者潜移默化地掌握概念。   本书的作者Deitel一家是美国编程教材方面的名家,他们的作品繁多,并且多为美国各著名大学的指定教材。本书是一本C++编程方面的优秀教程,全面介绍了过程式编程与面向对象编程的原理与方法,细致地分析了各种性能问题、可移植性问题以及可能出错的情况。作者通过大量的示例程序,重点突出了利用UML进行面向对象的设计,引入了使用CGI的web应用开发,并且帮助学生创建真实世界的c++应用程序。本书无论从广度和深度上来说都非常全面,并且从基础概念讲起,同样适合没有编程经验的读者学习。通过可以实际使用的完整例子,可以使读者潜移默化地掌握概念。   本书可作为高等院校相关专业的编程语言教材和c++编程教材,也是软件设计人员进行C++程序开发的。   采用了Deitel的Live-Code方式,对C++的基本概念、使用UML的面向对象设计(OOD)以及使用CGI的Web编程进行了完整、权威的介绍!   这本世界上使用最为广泛的C++编程教材的第四版,为读者展现了C++的各种卓越的性能;提供了面向对象设计与实现的实例学习,其中使用了对象管理组(OMG)发布的统一建模语言(UML):同时介绍了使用CGI的n层web应用开发。   在本书中,Deitel一家为我们介绍了面向对象编程的基本概念以及C++的编程基础,相关的内容包括:   ·控制结构/函数/指针 ·异常处理/运算符重载 ·string和vector对象 ·类/对象/封装 ·模板/数据结构/文件/流 ·基于指针的数组和字符串 ·OOP/继承/多态 ·标准模板库(STL) ·名字空间/运行时的类型信息 ·使用UML的面向对象设计 ·位和字符处理 ·n层Web应用/CGI/XHTML   本书可以帮助学生建立真实世界中的c+十应用程序,并且提供了丰富的教学特性:   ·数百个Live—Code程序,同时给出了计算机屏幕上的输出结果   ·大量的Intemet和WWW资源,鼓励读者进行深入研究   ·数百个提示、推荐做法与警告,使用下列图标表示   本书的教学资源包括web站点(www.deitel.com、WWW.prenhall。com/deitel以及www.InformlT com/deitel),可以为教师、学生和专业人士提供书中的示例代码(这些代码也包含在本书附带的CD-ROM 中)与相关信息。可以通过Email地址deilel@deiteI.com与作者联系。

目录

1 introduction to computers and c++ programming
1.1 introduction
1.2 what is a computer?
1.3 computer organization
1.4 evolution of operating systems
1.5 personal computing, distributed computing and clienffserver computing
1.6 machine languages, assembly languages, and high-level languages
1.7 history of c and c++
1.8 c++ standard library
1.9 java
1.10 visual basic, visual c++ and c#
1.11 other high-level languages
1.12 structured programming
1.13 the key software trend: object technology
1.14 basics of a typical c++ environment
1.15 hardware trends
1.16 history of the intemet
1.17 history of the world wide web
1.18 world wide web consortium (w3c)
1.19 general notes about c++ and this book
.1.20 introduction to c++ programming
1.21 a simple program: printing a line of text
1.22 another simple program: adding two integers
1.23 memory concepts
1.24 arithmetic
1.25 decision making: equality and relational operators
1.26 thinking about objects: introduction to object technology and the unified modeling language
1.27 tour of the book
2 control structures
2.1 introduction
2.2 algorithms
2.3 pseudocode
2.4 control structures
2.5 if selection structure
2.6 if/else selection structure
2.7 while repetition structure
2.8 formulating algorithms: case study 1 (counter-controlled repetition)
2.9 formulating algorithms with top-down, stepwise refinement:case study 2 (sentinel-controlled repetition)
2.10 formulating algorithms with top-down, stepwise refinement:case study 3 (nested control structures)
2.11 assignment operators
2.12 increment and decrement operators
2.13 essentials of counter-controlled repetition
2.14 for repetition structure
2.15 examples using the for structure
2.16 switch multiple-selection structure
2.17 do/while repetition structure
2.18 break and continue statements
2.19 logical operators
2.20 confusing equality (==) and assignment (=) operators
2.21 structured-programming summary
2.22 [optional case study] thinking about objects: identifying a system's classes from a problem statement
3 functions
3.1 introduction
3.2 program components in c++
3.3 math library functions
3.4 functions
3.5 function definitions
3.6 function prototypes
3.7 header files
3.8 random number generation
3.9 example: game of chance and introducing enum
3.10 storage classes
3.11 scope rules
3.12 recursion
3.13 example using recursion: fibonacci series
recursion vs. iteration
functions with empty parameter lists
inline functions
references and reference parameters
default arguments
unary scope resolution operator
function overloading
function templates
[optional case study] thinking about objects: identifying a
class's attributes
arrays
introduction
arrays
declaring arrays
examples using arrays
passing arrays to functions
sorting arrays
case study: computing mean, median and mode using arrays
searching arrays: linear search and binary search
multiple-subscripted arrays
[optional case study] thinking about objects: identifying the
operations of a class
pointers and strings
introduction
pointer variable declarations and initialization
poiuter operators
calling functions by reference
using const with pointers
bubble sort using pass-by-reference
pointer expressions and pointer arithmetic
relationship between pointers and arrays
arrays of pointers
case study: card shuffling and dealing simulation
function pointers
introduction to character and string processing
5.12.1 fundamentals of characters and strings
5.12.2 string manipulation functions of the string-handling library
5.13 [optional case study] thinking about objects: collaborations
among objects
6 classes and data abstraction
6.1 introduction
6.2 structure definitions
6.3 accessing structure members
implementing user-defined type time with a c-like struct
implementing abstract data type time with a class
class scope and accessing class members
separating interface from implementation
controlling access to members
access functions and utility functions
initializing class objects: constructors
using default arguments with constructors
destructors
when constructors and destructurs are called
using set and get functions
subtle trap: returning a reference to a private data member
default memberwise assignment
software reusability
[optional case study) thinking about objects: starting to program the classes for the elevator simulator
7 classes: part ii
7.1 introduction
7.2 const (constant) objects and eonst member functions
7.3 composition: objects as members of classes
7.4 friend functions and friend classes
7.5 using the this pointer
7.6 dynamic memory management with operators new and delete
7.7 static class members
7.8 data abstraction and information hiding
7.8.1 example: array abstract data type
7.8.2 example: string abstract data type
7.8.3 example: queue abstract data type
7.9 container classes and iterators
7.10 proxy classes
7.11 [optional case study] thinking about objects: programming the classes for the elevator simulator
8 operator overloading; string and array objects
8.1 introduction
8.2 fundamentals of operator overloading
8.3 restrictions on operator overloading
8.4 operator functions as class members vs. as friend functions
8.5 overloading stream-insertion and stream-extraction operators
8.6 overloading unary operators
8.7 overloading binary operators
8.8 case study: array class
8.9 converting between types
8.10 case study: string class
8.11 overloading ++ and --
case study: a date class
standard library classes string and vector
object-oriented programming: inheritance
introduction
base classes and derived classes
protected members
relationship between base classes and derived classes
case study: three-level inheritance hierarchy
constructors and destructors in derived classes
“uses a” and “knows a” relationships
dublic, protected and private inheritance
software engineering with inheritance
[optional case study] thinking about objects: incorporating
inheritance into the elevator simulation
10 object-oriented programming: polymorphism
10.1 introduction
10.2 relationships among objects in an inheritance hierarchy
10.2.1 invoking base-class functions from derived-class objects
10.2.2 aiming derived-class pointers at base-class objects
10.2.3 derived-class member-function calls via base-class pointers
10.2.4 virtual functions
10.3 polymorpbism examples
10.4 type fields and switch structures
10.5 abstract classes
10.6 case study: inheriting interface and implementation
10.7 polymorphism, virtual functions and dynamic binding "under
the hood"
10.8 virtual destructors
10.9 case study: payroll system using polymorphism and run-time type information with dynamic and typeid
11 templates
11.1 introduction
11.2 function templates
11.3 overloading function templates
11.4 class templates
11.5 class templates and nontype parameters
11.6 templates and inheritance
11.7 templates and friends
11.8 templates and static members
12 c++ stream input/output
12.1 introduction
12.2 streams
12.2.1 classic streams vs. standard streams
12.2.2 iostream library header files
12.2.3 stream input/output classes and objects
12.3 stream output
12.3.1 output of char * variables
12.3.2 character output using member function put
12.4 stream input
12.4.1 get and getline member functions
12.4.2 istream member functions peek, putback and ignore
12.4.3 type-safe i/o
12.5 unformatted i/o using read, write and gcount
12.6 introduction to stream manipulators
12.6.1 integral stream base: dec, oct, hex and setbase
12.6.2 floating-point precision (precision, eetprecj, eion)
12.6.3 field width (width, setw)
12.6.4 programmer-defined manipulators
12.7 stream format states and stream manipulators
12.7.1 trailing zeros and decimal points (shovpoint)
12.7.2 justification (left, right and internal)
12.7.3 padding (fi11, setfill)
12.7.4 integral stream base (dec, oct, hex, showbase)
12.7.5 floating-point numbers; scientific and fixed notation(scientific, fixed)
12.7.6 uppercase/lowercase control (uppercase)
12.7.7 specifying boolean format (boolalpha)
12.7.8 setting and resetting the format state via memberfunction flags
12.8 stream error states
12.9 tying an output stream to an input stream
15 exception handling
13.1 introduction
13.2 exception-handling overview
13.3 other error-handling techniques
13.4 simple exception-handling example: divide by zero
13.5 rethrowing an exception
13.6 exception specifications
13.7 processing unexpected exceptions
13.8 stack unwinding
13.9 constructors, destructors and exception handling
13.10 exceptions and inheritance
13.11 processing new failures
13.12 class &uto_ptr and dynamic memory allocation
13.13 standard library exception hierarchy
14 file processing
14.1 introduction
14.2 the data hierarchy
14.3 files and streams
14.4 creating a sequential-access file
14.5 reading data from a sequential-access file
14.6 updating sequential-access files
14.7 random-access files
14.8 creating a random-access file
14.9 writing data randomly to a random-access file
14.10 reading data sequentially from a random-access file
14.11 example: a transaction-processing program
14.12 input/output of objects
15 class string and string stream processing
15.1 introduction
15.2 string assignment and concatenation
15.3 comparing strings
15.4 substrings
15.5 swapping strings
15.6 string characteristics
15.7 finding strings and characters in a string
15.8 replacing characters in a string
15.9 inserting characters into a string
15.10 conversion to c-style char * strings
15.11 iterators
15.12 string stream processing
16 web programming with col
16.1 introduction
16.2 http request types
16.3 multi-tier architecture
16.4 accessing web servers
16.5 apache http server
16.6 requesting xhtml documents
16.7 introduction to cgi
16.8 simple http transaction
16.9 simple cgi script
16.10 sending input to a cgi script
16.11 using xhtml forms to send input
16.12 other headers
16.13 case study: an interactive web page
16.14 cookies
16.15 server-side files
16.16 case study: shopping cart
16.17 intemet and web resources
17 data structures
17.1 introduction
17.2 self-referential classes
dynamic memory allocation and data structures
linked lists
stacks
queues
trees
bits, characters, strings and structures
introduction
structure definitions
initializing structures
using structures with functions
typedef
example: high-performance card-shuffling and dealing simulation
bitwise operators
bit fields
character-handling library
18.10 string-conversion functions
18.11 search functions of the string-handling library
18.12 memory functions of the string-handling library
preprocessor
introduction
the #include preprocessor directive
the #define preprocessor directive: symbolic constants
the #define preprocessor directive: macros
conditional compilation
the #error and #pragma preprocessor directives
the # and ## operators
line numbers
predefined symbolic constants
19.10 assertions
c legacy code topics
introduction
redirecting input/output on unix and dos systems
variable-length argument lists
using command-line arguments
notes on compiling multiple-source-file programs
program termination with exit and atexlt
the volaeile type qualifier
suffixes for integer and floating-point constants
signal handling
20.10 dynamic memory allocation with calloc and reailoc
20.11 the unconditional branch: goto
20.12 unions
20.13 linkage specifications
standard template library (stl)
introduction to the standard template library (stl)
21.1.1 introduction to containers
21.1.2 introduction to iterators
21.1.3 introduction to algorithms
sequence containers
21.2.1 vector sequence container
21.2.2 iist sequence container
21.2.3 cleque sequence container
associative containers
21.3.1 multiset associative container
21.3.2 set: associative container
21.3.3 multimap associative container
21.3.4 mag associative container
container adapters
21.4.1 stack adapter
21.4.2 queue adapter
21.4.3 priority_queue adapter
algorithms
21.5.1 fill, fill_n, generate and generate_n
21.5.2 equal, mismatch and lexicographical_compare
21.5.3 remove, remove_if, remove_copy and remove_copy_if
21.5.4 replace, replace_if, replace_copy and replace_copy_i f
21.5.5 mathematical algorithms
21.5.6 basic searching and sorting algorithms
21.5.7 swap, iter_swap and swap_ranges
21.5.8 cody_backward, merge, unique and reverse
21.5.9 inplace_merge, unique_copy and reverse_color
21.5.10 set operations
21.5.11 lower_bound, udder_bound and equal_range
21.5.12 heapsort
21.5.13 atin and max
21.5.14 algorithms not covered in this chapter
class bitset
function objects
stl intemet and web resources
other topics
introduction
const cast operator
reinterpret_cast operator
namespaces
operator keywords
explicit constructors
22.7 mutable class members
22.8 pointers to class members (.* and -]*)
22.9 multiple inheritance
22.10 multiple inheritance and rift:ual base classes
22.11 closing remarks
operator precedence chart
ascii character set
number systems
introduction
abbreviating binary numbers as octal numbers and
hexadecimal numbers
converting octal numbers and hexadecimal numbers to binary numbers
converting from binary, octal or hexadecimal to decimal
converting from decimal to binary, octal or hexadecimal
negative binary numbers: two's complement notation
c++ internet and web resources
resources
tutorials
faqs
visual c++
newsgroups
compilers and development tools
standard template library
introduction to xhtml
introduction
editing xhtml
first xhtml example
headers
linking
images
special characters and more line breaks
unordered lists
nested and ordered lists
basic xhtml tables
intermediate xhtml tables and formatting
basic xhtml forms
more complex xhtml forms
intemet and world wide web resources
xhtml special characters
bibliography
index

已确认勘误

次印刷

页码 勘误内容 提交人 修订印次

C++大学教程(第4版)(英文版)
    • 名称
    • 类型
    • 大小

    光盘服务联系方式: 020-38250260    客服QQ:4006604884

    意见反馈

    14:15

    关闭

    云图客服:

    尊敬的用户,您好!您有任何提议或者建议都可以在此提出来,我们会谦虚地接受任何意见。

    或者您是想咨询:

    用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问

    Video Player
    ×
    Audio Player
    ×
    pdf Player
    ×
    Current View

    看过该图书的还喜欢

    some pictures

    解忧杂货店

    东野圭吾 (作者), 李盈春 (译者)

    亲爱的云图用户,
    光盘内的文件都可以直接点击浏览哦

    无需下载,在线查阅资料!

    loading icon