skip to content
An introduction to design patterns in C++ with Qt Preview this item
ClosePreview this item
Checking...

An introduction to design patterns in C++ with Qt

Author: Alan Ezust; Paul Ezust
Publisher: Upper Saddle River, NJ : Prentice Hall, 2011.
Series: Prentice Hall open source software development series.
Edition/Format:   eBook : Document : English : 2nd edView all editions and formats
Rating:

(not yet rated) 0 with reviews - Be the first.

Subjects
More like this

 

Find a copy online

Links to this item

Find a copy in the library

&AllPage.SpinnerRetrieving; Finding libraries that hold this item...

Details

Genre/Form: Electronic books
Additional Physical Format: Print version:
Ezust, Alan.
Introduction to design patterns in C++ with QT 4.
Upper Saddle River, NJ : Addison-Wesley, 2011
(DLC) 2011018378
(OCoLC)729863166
Material Type: Document, Internet resource
Document Type: Internet Resource, Computer File
All Authors / Contributors: Alan Ezust; Paul Ezust
ISBN: 9780132851619 013285161X 9780132851633 0132851636
OCLC Number: 747561072
Description: 1 online resource (1 volume) : illustrations.
Contents: Foreword xvPreface xixPreface to the Second Edition xxiiAcknowledgments xxvAbout the Authors xxxPart I: Design Patterns and Qt 4 1Chapter 1: C++ Introduction 31.1 Overview of C++ 31.2 A Brief History of C++ 41.3 C++ First Example 51.4 Standard Input and Output 81.5 Introduction to Functions 111.6 qmake, Project Files, and Makefile 171.7 Getting Help Online 241.8 Strings 241.9 Streams 261.10 File Streams 291.11 Qt Dialogs for User Input/Output 341.12 Identifiers, Types, and Literals 371.13 C++ Simple Types 401.14 The Keyword const 521.15 Pointers and Memory Access 541.16 Reference Variables 601.17 const* and *const 611.18 Review Questions 64Chapter 2: Top of the class 672.1 First, There Was struct 672.2 Class Definitions 692.3 Member Access Specifiers 712.4 Encapsulation 742.5 Introduction to UML 752.6 Friends of a Class 762.7 Constructors 772.8 Destructors 802.9 The Keyword static 812.10 Class Declarations and Definitions 862.11 Copy Constructors and Assignment Operators 882.12 Conversions 922.13 const Member Functions 952.14 Subobjects 972.15 Exercise: Classes 982.16 Review Questions 108Chapter 3: Introduction to Qt 1133.1 Style Guidelines, Naming Conventions 1143.2 The Qt Core Module 1163.3 QtCreator-An IDE for Qt Programming 1193.4 Exercises: Introduction to Qt 1203.5 Review Questions 121Chapter 4: Lists 1224.1 Introduction to Containers 1224.2 Iterators 1234.3 Relationships 1294.4 Exercise: Relationships 1324.5 Review Questions 134Chapter 5: Functions 1355.1 Overloading Functions 1355.2 Optional Arguments 1385.3 Operator Overloading 1415.4 Parameter Passing by Value 1465.5 Parameter Passing by Reference 1485.6 References to const 1525.7 Function Return Values 1545.8 Returning References from Functions 1545.9 Overloading on const 1555.10 inline Functions 1585.11 Functions with Variable-Length Argument Lists 1625.12 Exercise: Encryption 1645.13 Review Questions 167Chapter 6: Inheritance and Polymorphism 1686.1 Simple Derivation 1686.2 Derivation with Polymorphism 1776.3 Derivation from an Abstract Base Class 1846.4 Inheritance Design 1896.5 Overloading, Hiding, and Overriding 1916.6 Constructors, Destructors, and Copy Assignment Operators 1936.7 Processing Command-Line Arguments 1986.8 Containers 2046.9 Managed Containers, Composites, and Aggregates 2066.10 Containers of Pointers 2106.11 Review Questions 228Chapter 7: Libraries and Design Patterns 2347.1 Building and Reusing Libraries 2367.2 Exercise: Installing Libraries 2447.3 Frameworks and Components 2477.4 Design Patterns 2487.5 Review Questions 257Chapter 8: QObject, QApplication, Signals, and Slots 2598.1 Values and Objects 2638.2 Composite Pattern: Parents and Children 2648.3 QApplication and the Event Loop 2728.4 Q_OBJECT and moc: A checklist 2748.5 Signals and Slots 2758.6 QObject Lifecycle 2778.7 QTestLib 2778.8 Exercises: QObject, QApplication, Signals, and Slots 2828.9 Review Questions 282Chapter 9: Widgets and Designer 2839.1 Widget Categories 2849.2 Designer Introduction 2869.3 Dialogs 2909.4 Form Layout 2929.5 Icons, Images, and Resources 2959.6 Layout of Widgets 2989.7 Designer Integration with Code 3069.8 Exercise: Input Forms 3139.9 The Event Loop: Revisited 3149.10 Paint Events, Drawing Images 3239.11 Review Questions 325Chapter 10: Main Windows and Actions 32610.1 QActions, QMenus, and QMenuBars 32710.2 Regions and QDockWidgets 33710.3 QSettings: Saving and Restoring Application State 33910.4 Clipboard and Data Transfer Operations 34110.5 The Command Pattern 34310.6 tr() and Internationalization 35110.7 Exercises: Main Windows and Actions 35210.8 Review Questions 353Chapter 11: Generics and Containers 35511.1 Generics and Templates 35511.2 Generics, Algorithms, and Operators 36211.3 Sorted Map Example 36511.4 Function Pointers and Functors 36811.5 Flyweight Pattern: Implicitly Shared Classes 37111.6 Exercise: Generics 37511.7 Review Questions 376Chapter 12: Meta Objects, Properties, and Reflective Programming 37812.1 QMetaObject-The MetaObject Pattern 37812.2 Type Identification and qobject_cast 38012.3 Q_PROPERTY Macro-Describing QObject Properties 38312.4 QVariant Class: Accessing Properties 38612.5 Dynamic Properties 38912.6 MetaTypes, Declaring, and Registering 39412.7 invokeMethod() 39612.8 Exercises: Reflection 39712.9 Review Questions 397Chapter 13: Models and Views 39913.1 Model-View-Controller (MVC) 40013.2 Qt Models and Views 40213.3 Table Models 41413.4 Tree Models 42413.5 Smarter Pointers 42913.6 Exercises: Models and Views 43113.7 Review Questions 433Chapter 14: Validation and Regular Expressions 43414.1 Input Masks 43514.2 Validators 43814.3 Regular Expressions 44014.4 Regular Expression Validation 44914.5 Subclassing QValidator 45114.6 Exercises: Validation and Regular Expressions 45414.7 Review Questions 456Chapter 15: Parsing XML 45715.1 The Qt XML Parsers 46015.2 SAX Parsing 46215.3 XML, Tree Structures, and DOM 46615.4 XML Streams 47615.5 Review Questions 479Chapter 16: More Design Patterns 48116.1 Creational Patterns 48116.2 Memento Pattern 49116.3 Facade Pattern 49816.4 Review Questions 505Chapter 17: Concurrency 50617.1 QProcess and Process Control 50617.2 QThread and QtConcurrent 52217.3 Exercises: QThread and QtConcurrent 53617.4 Review Questions 537Chapter 18: Database Programming 53918.1 QSqlDatabase: Connecting to SQL from Qt 54118.2 Queries and Result Sets 54618.3 Database Models 54818.4 Review Questions 549Part II: C++ Language Reference 550Chapter 19: Types and Expressions 55219.1 Operators 55319.2 Statements and Control Structures 55719.3 Evaluation of Logical Expressions 56419.4 Enumerations 56519.5 Signed and Unsigned Integral Types 56719.6 Standard Expression Conversions 57019.7 Explicit Conversions 57419.8 Safer Typecasting Using ANSI C++ Typecasts 57419.9 Overloading Special Operators 58119.10 Runtime Type Identification 58719.11 Member Selection Operators 59019.12 Exercises: Types and Expressions 59219.13 Review Questions 594Chapter 20: Scope and Storage Class 59520.1 Declarations and Definitions 59520.2 Identifier Scope 59720.3 Storage Class 60620.4 Namespaces 61020.5 Review Questions 615Chapter 21: Memory Access 61721.1 Pointer Pathology 61821.2 Further Pointer Pathology with Heap Memory 62021.3 Memory Access Summary 62321.4 Introduction to Arrays 62421.5 Pointer Arithmetic 62621.6 Arrays, Functions, and Return Values 62721.7 Different Kinds of Arrays 62921.8 Valid Pointer Operations 62921.9 Arrays and Memory: Important Points 63221.10 Exercises: Memory Access 63321.11 Review Questions 634Chapter 22: Inheritance in Detail 63522.1 virtual Pointers, virtual Tables 63522.2 Polymorphism and virtual Destructors 63822.3 Multiple Inheritance 64222.4 public, protected, and private Derivation 65022.5 Review Questions 652Part III: Programming Assignments 653Chapter 23: MP3 Jukebox Assignments 65523.1 Phonon/MultiMediaKit Setup 65723.2 Playlist 65723.3 Playlists 65823.4 Source Selector 65923.5 Database Playlists 66123.6 Star Delegates 66123.7 Sorting, Filtering, and Editing Playlists 661Appendix A: C++ Reserved Keywords 662Appendix B: Standard Headers 664Appendix C: Development Tools 666Appendix D: Alan's Quick Start Guide to Debian for Programmers 691Appendix E: C++/Qt Setup 698Bibliography 706Index 709
Series Title: Prentice Hall open source software development series.
Other Titles: Introduction to design patterns in C++ with Qt 4
Responsibility: Alan Ezust, Paul Ezust.

Reviews

User-contributed reviews
Retrieving GoodReads reviews...
Retrieving DOGObooks reviews...

Tags

Be the first.
Confirm this request

You may have already requested this item. Please select Ok if you would like to proceed with this request anyway.

Linked Data


Primary Entity

<http://www.worldcat.org/oclc/747561072> # An introduction to design patterns in C++ with Qt
    a schema:MediaObject, schema:CreativeWork, schema:Book ;
   library:oclcnum "747561072" ;
   library:placeOfPublication <http://experiment.worldcat.org/entity/work/data/2867417177#Place/upper_saddle_river_nj> ; # Upper Saddle River, NJ
   library:placeOfPublication <http://id.loc.gov/vocabulary/countries/nju> ;
   schema:about <http://id.worldcat.org/fast/843286> ; # C++ (Computer program language)
   schema:about <http://id.loc.gov/authorities/subjects/sh87004662> ; # Computer software--Reusability
   schema:about <http://id.worldcat.org/fast/872588> ; # Computer software--Reusability
   schema:about <http://id.worldcat.org/fast/1124209> ; # Software patterns
   schema:alternateName "Introduction to design patterns in C++ with Qt 4" ;
   schema:bookEdition "2nd ed." ;
   schema:bookFormat schema:EBook ;
   schema:contributor <http://viaf.org/viaf/70813896> ; # Paul Ezust
   schema:creator <http://viaf.org/viaf/48651244> ; # Alan Ezust
   schema:datePublished "2011" ;
   schema:exampleOfWork <http://worldcat.org/entity/work/id/2867417177> ;
   schema:genre "Electronic books"@en ;
   schema:inLanguage "en" ;
   schema:isPartOf <http://experiment.worldcat.org/entity/work/data/2867417177#Series/prentice_hall_open_source_software_development_series> ; # Prentice Hall open source software development series.
   schema:isSimilarTo <http://www.worldcat.org/oclc/729863166> ;
   schema:name "An introduction to design patterns in C++ with Qt"@en ;
   schema:productID "747561072" ;
   schema:publication <http://www.worldcat.org/title/-/oclc/747561072#PublicationEvent/upper_saddle_river_nj_prentice_hall_2011> ;
   schema:publisher <http://experiment.worldcat.org/entity/work/data/2867417177#Agent/prentice_hall> ; # Prentice Hall
   schema:url <http://proquest.tech.safaribooksonline.de/9780132851619> ;
   schema:url <http://proquest.safaribooksonline.com/9780132851619> ;
   schema:workExample <http://worldcat.org/isbn/9780132851619> ;
   schema:workExample <http://worldcat.org/isbn/9780132851633> ;
   wdrs:describedby <http://www.worldcat.org/title/-/oclc/747561072> ;
    .


Related Entities

<http://experiment.worldcat.org/entity/work/data/2867417177#Place/upper_saddle_river_nj> # Upper Saddle River, NJ
    a schema:Place ;
   schema:name "Upper Saddle River, NJ" ;
    .

<http://experiment.worldcat.org/entity/work/data/2867417177#Series/prentice_hall_open_source_software_development_series> # Prentice Hall open source software development series.
    a bgn:PublicationSeries ;
   schema:hasPart <http://www.worldcat.org/oclc/747561072> ; # An introduction to design patterns in C++ with Qt
   schema:name "Prentice Hall open source software development series." ;
   schema:name "Prentice Hall open source software development series" ;
    .

<http://id.loc.gov/authorities/subjects/sh87004662> # Computer software--Reusability
    a schema:Intangible ;
   schema:name "Computer software--Reusability"@en ;
    .

<http://id.worldcat.org/fast/1124209> # Software patterns
    a schema:Intangible ;
   schema:name "Software patterns"@en ;
    .

<http://id.worldcat.org/fast/843286> # C++ (Computer program language)
    a schema:Intangible ;
   schema:name "C++ (Computer program language)"@en ;
    .

<http://id.worldcat.org/fast/872588> # Computer software--Reusability
    a schema:Intangible ;
   schema:name "Computer software--Reusability"@en ;
    .

<http://viaf.org/viaf/48651244> # Alan Ezust
    a schema:Person ;
   schema:familyName "Ezust" ;
   schema:givenName "Alan" ;
   schema:name "Alan Ezust" ;
    .

<http://viaf.org/viaf/70813896> # Paul Ezust
    a schema:Person ;
   schema:familyName "Ezust" ;
   schema:givenName "Paul" ;
   schema:name "Paul Ezust" ;
    .

<http://worldcat.org/isbn/9780132851619>
    a schema:ProductModel ;
   schema:isbn "013285161X" ;
   schema:isbn "9780132851619" ;
    .

<http://worldcat.org/isbn/9780132851633>
    a schema:ProductModel ;
   schema:isbn "0132851636" ;
   schema:isbn "9780132851633" ;
    .

<http://www.worldcat.org/oclc/729863166>
    a schema:CreativeWork ;
   rdfs:label "Introduction to design patterns in C++ with QT 4." ;
   schema:description "Print version:" ;
   schema:isSimilarTo <http://www.worldcat.org/oclc/747561072> ; # An introduction to design patterns in C++ with Qt
    .


Content-negotiable representations

Close Window

Please sign in to WorldCat 

Don't have an account? You can easily create a free account.