O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

C++ Footprint and Performance Optimization

Book Description

  • The market for miniature computer programming is exploding. C++ Footprint and Performance Optimization supplies programmers the knowledge they need to write code for the increasing number of hand-held devices, wearable computers, and intelligent appliances

  • This book gives readers valuable knowledge and programming techniques that are not currently part of traditional programming training

  • In the world of C++ programming, all other things being equal, programs that are smaller and faster are better

  • C++ Footprint and Performance Optimization contains case studies and sample code to give readers concrete examples and proven solutions to problems that don't have cut and paste solutions

  • Table of Contents

    1. Copyright
    2. About the Authors
    3. Acknowledgments
    4. Tell Us What You Think!
    5. Introduction: Why Optimize?
    6. Aim of This Book
    7. Who This Book Is For
    8. The Structure of This Book
    9. Everything But the Code
      1. Optimizing: What Is It All About?
        1. Performance
        2. Footprint
        3. Summary
      2. Creating a New System
        1. System Requirements
        2. System Design Issues
        3. The Development Process
        4. Data Processing Methods
        5. Summary
      3. Modifying an Existing System
        1. Identifying What to Modify
        2. Beginning Your Optimization
        3. Analyzing Target Areas
        4. Performing the Optimizations
        5. Summary
    10. Getting Our Hands Dirty
      1. Tools and Languages
        1. Tools You Cannot Do Without
        2. Optimizing with Help from the Compiler
        3. The Language for the Job
        4. Summary
      2. Measuring Time and Complexity
        1. The Marriage of Theory and Practice
        2. System Influences
        3. Summary
      3. The Standard C/C++ Variables
        1. Variable Base Types
        2. Grouping Base Types
        3. Summary
      4. Basic Programming Statements
        1. Selectors
        2. Loops
        3. Summary
      5. Functions
        1. Invoking Functions
        2. Passing Data to Functions
        3. Early Returns
        4. Functions as Class Methods
        5. Summary
      6. Efficient Memory Management
        1. Memory Fragmentation
        2. Memory Management
        3. Resizable Data Structures
        4. Summary
      7. Blocks of Data
        1. Comparing Blocks of Data
        2. The Theory of Sorting Data
        3. Sorting Techniques
        4. Summary
      8. Storage Structures
        1. Arrays
        2. Linked Lists
        3. Hash Tables
        4. Binary Trees
        5. Red/Black Trees
        6. Summary
      9. Optimizing IO
        1. Efficient Screen Output
        2. Efficient Binary File IO
        3. Efficient Text File IO
        4. Summary
      10. Optimizing Your Code Further
        1. Arithmetic Operations
        2. Operating System–Based Optimizations
        3. Summary
    11. Tips and Pitfalls
      1. Tips
        1. Tricks
        2. Preparing for the Future
      2. Pitfalls
        1. Algorithmic Pitfalls
        2. Typos that Compile
        3. Other Pitfalls
    12. Index