Category: C++

CodeGear RAD Studio 2007 Help Files

  • Author: Borland/CodeGear
  • Format: archived CHM
  • Price: free

This is a zip file containing 3 CHM files of the original RAD Studio 2007 help files, relevant to C++Builder 2007 and Delphi 2007. These also include bugfixes since June 1 2007.

A CodeGear Developer Network membership is needed in order to download the .zip file. Registration is free.

http://cc.embarcadero.com/Item/24792

Cross-Platform GUI Programming with wxWidgets

My image
  • Author: Julian Smart, Kevin Hock, Stefan Csomor
  • Format: PDF
  • Price: free

wxWidgets is an easy-to-use, open source C++ API for writing GUI applications that run on Windows, Linux, Unix, Mac OS X, and even Pocket PC, supporting each platform’s native look and feel with virtually no additional coding.

Now, its creator and two leading developers teach you all you need to know to write robust cross-platform software with wxWidgets. This book covers everything from dialog boxes to drag-and-drop, from networking to multithreading. It includes all the tools and code you need to get great results, fast.

From AMD to AOL, Lockheed Martin to Xerox, world-class developers are using wxWidgets to save money, increase efficiency, and reach new markets. With this book, you can, too.

Chapters include:

  • Introduction
  • Getting Started
  • Event Handling
  • Window Basics
  • Drawing and Printing
  • Handling Input
  • Window Layout Using Sizers
  • Using Standard Dialogs
  • Writing Custom Dialogs
  • Programming with Images
  • Clipboard and Drag and Drop
  • Advanced Window Classes
  • Files and Streams
  • Memory Management, Debugging, and Error Checking
  • Writing International Applications
  • Writing Multithreaded Applications
  • Programming with wxSocket
  • Working with Documents and Views
  • Perfecting Your Application
  • Installing wxWidgets
  • Building Your Own wxWidgets Applications
  • Creating Applications with DialogBlocks
  • Other Features in wxWidgets
  • Third-Party Tools for wxWidgets
  • wxWidgets Application Showcase
  • How wxWidgets Processes Events
  • Event Classes and Macros
  • Code Listings
  • Porting from MFC

http://www.phptr.com/content/images/0131473816/downloads/0131473816_book.pdf

C++ GUI Programming with Qt 3

My image
  • Author: Jasmin Blanchette, Mark Summerfield
  • Format: PDF
  • Price: free

This book covers all you need to build industrial-strength applications with Qt 3.2.x and C++–applications that run natively on Windows, Linux/Unix, Mac OS X, and embedded Linux with no source code changes!

The book teaches solid Qt programming practices; it is not a rehash of the documentation.

Already using Qt or just starting out? Evaluating Qt or managing it? Building open source applications–or commercial applications? Want to develop for Windows without buying an expensive compiler? Whatever your goal, this is the only book you need.

Chapters include:

  • Getting Started
  • Creating Dialogs
  • Creating Main Windows
  • Implementing Application Functionality
  • Creating Custom Widgets
  • Layout Management
  • Event Processing
  • 2D and 3D Graphics
  • Drag and Drop
  • Input/Output
  • Container Classes
  • Databases
  • Networking
  • XML
  • Internationalization
  • Providing Online Help
  • Multithreading
  • Platform-Specific Features
  • Installing Qt
  • Qt’s Class Hierarchy

http://www.informit.com/content/images/0131240722/downloads/blanchette_book.pdf

Thinking in C++ 2nd Edition (Volumes 1 & 2)

  • Author: Bruce Eckel
  • Format: online HTML, archived PDF
  • Price: free

Bruce Eckel has kindly provided his books “Thinking in C++, Second Edition” free of charge to on-line readers.

Volume 1: Introduction to Standard C++

Fully revised and beefed up with plenty of new material on today’s Standard C++, the new edition of Bruce Eckel’s Thinking in C++: Volume I is an excellent tutorial to mastering this rich (and sometimes daunting) programming language, filled with expert advice and written in a patient, knowledgeable style.

The effective presentation, along with dozens of helpful code examples, make this book a standout. The text first sets the stage for using C++ with a tour of what object-oriented programming is all about, as well as the software design life cycle.

The author then delves into every aspect of C++, from basic keywords and programming principles to more advanced topics, like function and operator overloading, virtual inheritance, exception handling, namespaces, and templates.

C++ is a complex language, and the author covers a lot of ground using today’s Standard C++, but without getting bogged down in excessive detail.

Chapters include:

  • Introduction to Objects
  • Making & Using Objects
  • The C in C++
  • Data Abstraction
  • Hiding the Implementation
  • Initialization & Cleanup
  • Function Overloading & Default Arguments
  • Constants
  • Inline Functions
  • Name Control
  • References & the Copy-Constructor
  • Operator Overloading
  • Dynamic Object Creation
  • Inheritance & Composition
  • Polymorphism & Virtual Functions
  • Introduction to Templates

Volume 2: Practical Programming

Best selling author Bruce Eckel has joined forces with Chuck Allison to write Thinking in C++, Volume 2, the sequel to the highly received and best selling Thinking in C++, Volume 1. Eckel is the master of teaching professional programmers how to quickly learn cutting edge topics in C++ that are glossed over in other C++ books.

In Thinking in C++, Volume 2, the authors cover the finer points of exception handling, defensive programming and string and stream processing that every C++ programmer needs to know. Special attention is given to generic programming where the authors reveal little known techniques for effectively using the Standard Template Library.

In addition, Eckel and Allison demonstrate how to apply RTTI, design patterns and concurrent programming techniques to improve the quality of industrial strength C++ applications.
This book is targeted at programmers of all levels of experience who want to master C++.

Chapters include:

  • Introduction
  • Exception Handling
  • Defensive Programming
  • Strings in Depth
  • Iostreams
  • Templates in Depth
  • Generic Algorithms
  • Generic Containers
  • Runtime Type Identification
  • Multiple Inheritance
  • Design Patterns
  • Concurrency

online HTML Volume 1: https://appsapps.com/ticppv1

online HTML Volume 2: https://appsapps.com/ticppv2

archived PDF: http://www.planetpdf.com/developer/article.asp?ContentID=6634

.NET Book Zero

My image
  • Author: Charles Petzold
  • Format: PDF and XPS, with downloadable source code
  • Price: free

This book is an introduction to C# and the Microsoft .NET Framework for programmers who have experience with C or C++.

Chapters include:

  • Why This Book?
  • Why .NET?
  • Runtimes and SDKs
  • Edit, Compile, Run, Disassemble
  • Strings and the Console
  • Primitive Data Types
  • Operators and Expressions
  • Selection and Iteration
  • The Stack and the Heap
  • Arrays
  • Methods and Fields
  • Exception Handling
  • Classes, Structures, and Objects
  • Instance Methods
  • Constructors
  • Concepts of Equality
  • Fields and Properties
  • Inheritance
  • Virtuality
  • Operator Overloading
  • Interfaces
  • Interoperability
  • Dates and Times
  • Events and Delegates
  • Files and Streams
  • String Theory
  • Generics
  • Nullable Types

http://www.charlespetzold.com/dotnet/

Object-Oriented System Development

My image
  • Author: Dennis de Champeaux, Douglas Lea, and Penelope Faure
  • Format: online HTML
  • Price: free

This book is intended to help the reader better understand the role of analysis and design in the object-oriented software development process. Experiments to use structured analysis and design as precursors to an object-oriented implementation have failed. The descriptions produced by the structured methods partition reality along the wrong dimensions. Classes are not recognized and inheritance as an abstraction mechanism is not exploited.

However, we are fortunate that a multitude of object-oriented analysis and design methods have emerged and are still under development. Core OO notions have found their home place in the analysis phase. Abstraction and specialization via inheritance, originally advertised as key ingredients of OO programming, have been abstracted into key ingredients of OO analysis (OOA). Analysis-level property inheritance maps smoothly on the behavior inheritance of the programming realm.

While the book is mostly self-contained, people report that it does not serve as an introductory OO text. It helps to have had some previous exposure to basic OO concepts.

Chapters Include:

Part 1: Analysis

  • Introduction to Analysis
  • Object Statics
  • Object Relationships
  • Object Dynamics
  • Object Interaction
  • Class Relationships
  • Instances
  • Ensembles
  • Constructing a System Model
  • Other Requirements
  • The Analysis Process
  • Domain Analysis
  • The Grady Experience

Part II: Design

  • From Analysis to Design
  • Description and Computation
  • Attributes in Design
  • Relationships in Design
  • Designing Transitions
  • Interaction Designs
  • Dispatching
  • Coordination
  • Clustering Objects
  • Designing Passive Objects
  • Performance Optimization
  • From Design to Implementation

http://g.oswego.edu/dl/oosd/