Generic Programming and the STL
Home > Computing and Information Technology > Computer programming / software engineering > Programming and scripting languages: general > Generic Programming and the STL: Using and Extending the C++ Standard Template Library
Generic Programming and the STL: Using and Extending the C++ Standard Template Library

Generic Programming and the STL: Using and Extending the C++ Standard Template Library

|
     0     
5
4
3
2
1




Out of Stock


Notify me when this book is in stock
About the Book

Austern's book introduces you to the generic programming paradigm and to the most important instance of that paradigm--the C++ Standard Template Library (STL). This book reveals that the STL is more than a set of convenient container classes: It is also an extensible framework for generic and interoperable components. Austern explains the central ideas underlying generic programming--concepts, modeling, and refinement--and shows how these ideas lead to the fundamental concepts of the STL: iterators, containers, and function objects.

Table of Contents:
Preface. I. INTRODUCTION TO GENERIC PROGRAMMING. 1. A Tour of the STL. A Simple Example. Summary. 2. Algorithms and Ranges. Linear Search. Linear Search in C. Ranges. Linear Search in C++. Concepts and Modeling. Iterators. Input Iterators. Output Iterators. Forward Iterators. Bidirectional Iterators. Random Access Iterators. Refinement. Summary. 3. More about Iterators. Iterator Traits and Associated Types. Value Types. Difference Type. Reference and Pointer Types. Dispatching Algorithms and Iterator Tags. Putting It All Together. Iterator Traits without iterator_traits. Defining New Components. Iterator Adaptors. Advice for Defining an Iterator. Advice for Defining an Algorithm. Summary. 4. Function Objects. Generalizing Linear Search. Function Object Concepts. Unary and Binary Function Objects. Predicates and Binary Predicates. Associated Types. Function Object Adaptors. Predefined Function Objects. Summary. 5. Containers. A Simple Container. An Array Class. How It Works. Finishing Touches. Container Concepts. Containment of Elements. Iterators. The Hierarchy of Containers. The Trivial Container. Variable Size Container Concepts. Sequences. Associative Containers. Allocators. Summary. Which Container Should You Use? Defining Your Own Container. II. REFERENCE MANUAL: STL CONCEPTS. 6. Basic Concepts. Assignable. Default Constructible. Equality Comparable. Ordering. LessThan Comparable. Strict Weakly Comparable. 7. Iterators. Trivial Iterator. Input Iterator. Output Iterator. Forward Iterator. Bidirectional Iterator. Random Access Iterator. 8. Function Objects. Basic Function Objects. Generator. Unary Function. Binary Function. Adaptable Function Objects. Adaptable Generator. Adaptable Unary Function. Adaptable Binary Function. Predicates. Predicate. Binary Predicate. Adaptable Predicate. Adaptable Binary Predicate. Strict Weak Ordering. Specialized Concepts. Random Number Generator. Hash Function. 9. Containers. General Container Concepts. Container. Forward Container. Reversible Container. Random Access Container. Sequences. Sequence. Front Insertion Sequence. Back Insertion Sequence. Associative Containers. Associative Container. Unique Associative Container. Multiple Associative Container. Simple Associative Container. Pair Associative Container. Sorted Associative Container. Hashed Associative Container. Allocator. III. REFERENCED MANUAL: ALGORITHMS AND CLASSES. 10. Basic Components. pair. Iterator Primitives. iterator_traits. Iterator Tag Classes. distance. advance. Iterator Base Class. allocator. Memory Management Primitives. construct. destroy. uninitialized_copy. uninitialized_fill. uninitialized_fill_n. Temporary Buffers. get_temporary_buffer. return_temporary_buffer. 11. Nonmutating Algorithms. Linear Search. find. find_if. adjacent_find. find_first_of. Subsequence Matching. search. find_end. search_n. Counting Elements. count. count_if. for_each. Comparing Two Ranges. equal. mismatch. lexicographical_compare. Minimum and Maximum. min. max. min_element. max_element. 12. Basic Mutating Algorithms. Copying Ranges. copy. copy_backward. Swapping Elements. swap. iter_swap. swap_ranges. transform. Replacing Elements. replace. replace_if. replace_copy. replace_copy_if. Filling Ranges. fill. fill_n. generate. generate_n. Removing Elements. remove. remove_if. remove_copy. remove_copy_if. unique. unique_copy. Permuting Algorithms. reverse. reverse_copy. rotate. rotate_copy. next_permutation. prev_permutation. Partitions. partition. stable_partition. Random Shuffling and Sampling. random_shuffle. random_sample. random_sample_n. Generalized Numeric Algorithms. accumulate. inner_product. partial_sum. adjacent_difference. 13. Sorting and Searching. Sorting Ranges. sort. stable_sort. partial_sort. partial_sort_copy. nth_element. is_sorted. Operations on Sorted Ranges. Binary Search. Merging Two Sorted Ranges. Set Operations on Sorted Ranges. Heap Operations. make_heap. push_heap. pop_heap. sort_heap. is_heap. 14. Iterator Classes. Insert Iterators. front_insert_iterator. back_insert_iterator. insert_iterator. Stream Iterators. istream_iterator. ostream_iterator. istreambuf_iterator. ostreambuf_iterator. reverse_iterator. raw_storage_iterator. 15. Function Object Classes. Function Object Base Classes. unary_function. binary_function. Arithmetic Operations. plus. minus. multiplies. divides. modulus. negate. Comparisons. equal_to. not_equal_to. less. greater. less_equal. greater_equal. Logical Operations. logical_and. logical_or. logical_not. Identity and Projection. identity. project1st. project2nd. select1st. select2nd. Specialized Function Objects. hash. subtractive_rng. Member Function Adaptors. mem_fun_t. mem_fun_ref_t. mem_fun1_t. mem_fun1_ref_t. const_mem_fun_t. const_mem_fun_ref_t. const_mem_fun1_t. const_mem_fun1_ref_t. Other Adaptors. binder1st. binder2nd. pointer_to_unary_function. pointer_to_binary_function. unary_negate. binary_negate. unary_compose. binary_compose. 16. Container Classes. Sequences. vector. list. slist. deque. Associative Containers. set. map. multiset. multimap. hash_set. hash_map. hash_multiset. hash_multimap. Container Adaptors. stack. queue. priority_queue. Appendix A. Portability and Standardization. Language Changes. The Template Compilation Model. Default Template Parameters. Member Templates. Partial Specialization. New Keywords. Library Changes. Allocators. Container Adaptors. Minor Library Changes. Naming and Packaging. Bibliography. Index. 0201309564T04062001


Best Sellers


Product Details
  • ISBN-13: 9780201309560
  • Publisher: Pearson Education Limited
  • Publisher Imprint: Addison Wesley
  • Height: 100 mm
  • No of Pages: 576
  • Spine Width: 100 mm
  • Weight: 100 gr
  • ISBN-10: 0201309564
  • Publisher Date: 04 Jan 1999
  • Binding: Paperback
  • Language: English
  • Returnable: N
  • Sub Title: Using and Extending the C++ Standard Template Library
  • Width: 100 mm


Similar Products

Add Photo
Add Photo

Customer Reviews

REVIEWS      0     
Click Here To Be The First to Review this Product
Generic Programming and the STL: Using and Extending the C++ Standard Template Library
Pearson Education Limited -
Generic Programming and the STL: Using and Extending the C++ Standard Template Library
Writing guidlines
We want to publish your review, so please:
  • keep your review on the product. Review's that defame author's character will be rejected.
  • Keep your review focused on the product.
  • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
  • Refrain from mentioning competitors or the specific price you paid for the product.
  • Do not include any personally identifiable information, such as full names.

Generic Programming and the STL: Using and Extending the C++ Standard Template Library

Required fields are marked with *

Review Title*
Review
    Add Photo Add up to 6 photos
    Would you recommend this product to a friend?
    Tag this Book Read more
    Does your review contain spoilers?
    What type of reader best describes you?
    I agree to the terms & conditions
    You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

    CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

    These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


    By submitting any content to Bookswagon, you guarantee that:
    • You are the sole author and owner of the intellectual property rights in the content;
    • All "moral rights" that you may have in such content have been voluntarily waived by you;
    • All content that you post is accurate;
    • You are at least 13 years old;
    • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
    You further agree that you may not submit any content:
    • That is known by you to be false, inaccurate or misleading;
    • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
    • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
    • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
    • For which you were compensated or granted any consideration by any unapproved third party;
    • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
    • That contains any computer viruses, worms or other potentially damaging computer programs or files.
    You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


    For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


    All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

    Accept

    New Arrivals

    Inspired by your browsing history


    Your review has been submitted!

    You've already reviewed this product!