ORPP logo

Learning Boost C++ Libraries : (Record no. 54826)

MARC details
000 -LEADER
fixed length control field 10111nam a22005053i 4500
001 - CONTROL NUMBER
control field EBC2122136
003 - CONTROL NUMBER IDENTIFIER
control field MiAaPQ
005 - DATE AND TIME OF LATEST TRANSACTION
control field 20240729123833.0
006 - FIXED-LENGTH DATA ELEMENTS--ADDITIONAL MATERIAL CHARACTERISTICS
fixed length control field m o d |
007 - PHYSICAL DESCRIPTION FIXED FIELD--GENERAL INFORMATION
fixed length control field cr cnu||||||||
008 - FIXED-LENGTH DATA ELEMENTS--GENERAL INFORMATION
fixed length control field 240724s2015 xx o ||||0 eng d
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
International Standard Book Number 9781783551224
Qualifying information (electronic bk.)
020 ## - INTERNATIONAL STANDARD BOOK NUMBER
Canceled/invalid ISBN 9781783551217
035 ## - SYSTEM CONTROL NUMBER
System control number (MiAaPQ)EBC2122136
035 ## - SYSTEM CONTROL NUMBER
System control number (Au-PeEL)EBL2122136
035 ## - SYSTEM CONTROL NUMBER
System control number (CaPaEBR)ebr11084778
035 ## - SYSTEM CONTROL NUMBER
System control number (CaONFJC)MIL819057
035 ## - SYSTEM CONTROL NUMBER
System control number (OCoLC)919508998
040 ## - CATALOGING SOURCE
Original cataloging agency MiAaPQ
Language of cataloging eng
Description conventions rda
-- pn
Transcribing agency MiAaPQ
Modifying agency MiAaPQ
050 #4 - LIBRARY OF CONGRESS CALL NUMBER
Classification number QA76.73.C153
082 0# - DEWEY DECIMAL CLASSIFICATION NUMBER
Classification number 005.13/3;005.133
100 1# - MAIN ENTRY--PERSONAL NAME
Personal name Mukherjee, Arindam.
245 10 - TITLE STATEMENT
Title Learning Boost C++ Libraries :
Remainder of title Solve Practical Programming Problems Using Powerful, Portable, and Expressive Libraries from Boost.
250 ## - EDITION STATEMENT
Edition statement 1st ed.
264 #1 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Place of production, publication, distribution, manufacture Birmingham :
Name of producer, publisher, distributor, manufacturer Packt Publishing, Limited,
Date of production, publication, distribution, manufacture, or copyright notice 2015.
264 #4 - PRODUCTION, PUBLICATION, DISTRIBUTION, MANUFACTURE, AND COPYRIGHT NOTICE
Date of production, publication, distribution, manufacture, or copyright notice ©2015.
300 ## - PHYSICAL DESCRIPTION
Extent 1 online resource (558 pages)
336 ## - CONTENT TYPE
Content type term text
Content type code txt
Source rdacontent
337 ## - MEDIA TYPE
Media type term computer
Media type code c
Source rdamedia
338 ## - CARRIER TYPE
Carrier type term online resource
Carrier type code cr
Source rdacarrier
505 0# - FORMATTED CONTENTS NOTE
Formatted contents note Cover -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: Introducing Boost -- How it all started -- What is Boost? -- Getting started with Boost libraries -- Necessary software -- Linux toolchain -- Windows toolchain -- Obtaining and building Boost libraries -- Planning your Boost sandbox -- Library naming conventions -- Library name components -- Library name layouts -- Installing a Boost binary distribution -- Building and installing the Boost libraries from source -- Using Boost libraries in your projects -- Linking against Boost libraries on Linux -- Linking against Boost libraries on Windows -- Building the code listings in this book -- CMake -- Code examples -- Self-test questions -- Summary -- Chapter 2: The First Brush with Boost's Utilities -- Simple data structures -- Boost.Optional -- Accessing values stored in boost::optional -- get_value_or -- Boost.Optional versus pointers -- Boost.Tuple -- Creating tuples -- Accessing tuple elements -- Comparing tuples -- Writing generic code using tuples -- Working with heterogeneous values -- Boost.Variant -- Accessing values in a variant -- Defining recursive variants -- Boost.Any -- Boost.Conversion -- lexical_cast -- Handling command-line arguments -- Designing command-line options -- The diff command - a case study -- Using Boost.Program_Options -- Parsing positional parameters -- Multiple option values -- Other utilities and compile-time checks -- BOOST_CURRENT_FUNCTION -- Boost.Swap -- Compile-time asserts -- Diagnostics using preprocessor macros -- Self-test questions -- Summary -- References -- Chapter 3: Memory Management and Exception Safety -- Dynamic memory allocation and exception safety -- Exception safety and RAII -- Smart pointers -- Unique ownership semantics -- boost::scoped_ptr.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note boost::scoped_array -- std::unique_ptr -- Shared ownership semantics -- boost::shared_ptr and std::shared_ptr -- Intrusive smart pointers - boost::intrusive_ptr -- shared_array -- Managing non-memory resources using smart pointers -- Self-test questions -- Summary -- References -- Chapter 4: Working with Strings -- Text processing with Boost String Algorithms library -- Using Boost String Algorithms -- Find algorithms -- Case-conversion and trimming algorithms -- The replace and erase algorithms -- The split and join algorithms -- Splitting text using the Boost Tokenizer library -- Tokenizing based on separators -- Tokenizing records with fields containing metacharacters -- Tokenizing records with fixed-length fields -- Writing your own tokenizer functions -- Regular expressions using Boost.Regex -- Regular expression syntax -- Atoms -- Quantifiers -- Character classes -- Anchors -- Sub-expressions -- Disjunctions -- Using Boost.Regex to parse regular expressions -- Matching text -- Searching text -- Tokenizing text using regex -- Replacing text -- Self-test questions -- Summary -- Chapter 5: Effective Data Structures beyond STL -- Boost Container library -- Move-awareness and in-place construction -- Nonstandard containers -- Flat associative containers -- slist -- stable_vector -- static_vector -- Fast lookups using Boost Unordered containers -- Containers for dynamically-allocated objects -- Ownership semantics of pointer containers -- Null pointers in pointer containers -- Expressive initialization and assignment using Boost.Assign -- Assigning lists of values to containers -- Initializing containers with lists of values -- Initializing pointer containers and assigning values -- Iteration patterns using Boost.Iterator -- Smart iteration using Boost.Iterator -- Filter Iterator -- Transform Iterator -- Function Output Iterator.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Creating conforming iterators for custom classes -- Self-test questions -- Summary -- References -- Chapter 6: Bimap and Multi-index Containers -- Containers for multi-criteria lookups -- Boost Multi-index containers -- Index types -- Range lookups using lambda -- Insertions and updates -- Boost Bimap -- Collection types -- More ways to use bimaps -- Tagged access -- Projections -- Self-test questions -- Summary -- References -- Chapter 7: Higher Order and Compile-time Programming -- Higher order programming with Boost -- Function objects -- Lambdas - unnamed function literals -- Delegates and closures -- Partial function application -- Compile-time programming with Boost -- Basic compile-time control flow using templates -- Branching -- Recursion -- Boost Type Traits -- SFINAE and enable_if / disable_if -- The Boost Metaprogramming Library (MPL) -- Metafunctions -- Using MPL metafunctions -- Domain Specific Embedded Languages -- Lazy evaluation -- Expression templates -- Boost Phoenix -- Boost Spirit Parser Framework -- Using Spirit Qi -- Self-test questions -- Summary -- References -- Chapter 8: Date and Time Libraries -- Date and time calculations with Boost Date Time -- Dates from the Gregorian calendar -- Creating date objects -- Handling date durations -- Date periods -- Posix time -- Constructing time points and durations -- Resolution -- Time periods -- Time iterator -- Using Chrono to measure time -- Durations -- Duration arithmetic -- Clocks and time points -- Measuring program performance using Boost Timer -- cpu_timer -- auto_cpu_timer -- Self-test questions -- Summary -- References -- Chapter 9: Files, Directories, and IOStreams -- Managing files and directories with Boost Filesystem -- Manipulating paths -- Printing paths -- Constructing paths -- Breaking paths into components -- Traversing directories -- Querying filesystem entries.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Performing operations on files -- Creating directories -- Creating symbolic links -- Copying files -- Moving and deleting files -- Path-aware fstreams -- Extensible I/O with Boost IOStreams -- Architecture of Boost IOStreams -- Using devices -- Devices for file I/O -- Devices for reading and writing to memory -- Using filters -- Basic filters -- Filters for compression and decompression -- Composing filters -- Self-test questions -- Summary -- Chapter 10: Concurrency with Boost -- Creating concurrent tasks with Boost Thread -- Using Boost Threads -- Moving threads and waiting on threads -- Thread IDs -- Cores and threads -- Managing shared data -- Creating and coordinating concurrent tasks -- boost::future and boost::promise -- Waiting for future -- Throwing exceptions across threads -- shared_future -- std::future and std::promise -- std::packaged_task and std::async -- Lock-based thread synchronization methods -- Data races and atomic operations -- Mutual exclusion and critical sections -- Synchronizing on conditions -- The Readers-Writers problem -- Standard Library primitives -- Boost Coroutine -- Asymmetric coroutines -- Self-test questions -- Summary -- References -- Chapter 11: Network Programming Using Boost Asio -- Task execution with Asio -- IO Service, queues, and handlers -- Handler states - run_one, poll, and poll_one -- post versus dispatch -- Concurrent execution via thread pools -- io_service::work -- Serialized and ordered execution via strands -- Network I/O using Asio -- UDP and TCP -- IP addresses -- IPv4 addresses -- IPv6 addresses -- Endpoints, sockets, and name resolution -- Ports -- Sockets -- Hostnames and domain names -- Buffers -- Buffer sequences for vectored I/O -- Synchronous and asynchronous communications -- Asio deadline timer -- Asynchronous logic using Asio coroutines -- UDP -- Synchronous UDP client and server.
505 8# - FORMATTED CONTENTS NOTE
Formatted contents note Asynchronous UDP server -- Performance and concurrency -- TCP -- Establishing a TCP connection -- Synchronous TCP client and server -- Asynchronous TCP server -- Self-test questions -- Summary -- References -- Appendix: C++11 Language Features Emulation -- RAII -- Copy semantics -- The nothrow swap -- Move semantics and rvalue references -- rvalue references -- rvalue-reference overloads -- Move assignment -- xvalues -- Move emulation using Boost.Move -- C++11 auto and Boost.Auto -- Type deduction rules -- Common uses -- Boost.Auto -- Range-based for-loops -- Boost.Foreach -- C++11 exception-handling improvements -- Storing and rethrowing exceptions -- Storing and rethrowing exception using Boost -- Self-test questions -- References -- Index.
588 ## - SOURCE OF DESCRIPTION NOTE
Source of description note Description based on publisher supplied metadata and other sources.
590 ## - LOCAL NOTE (RLIN)
Local note Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element C++ (Computer program language).
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Computer software -- Development.
650 #0 - SUBJECT ADDED ENTRY--TOPICAL TERM
Topical term or geographic name entry element Microsoft Visual C++.
655 #4 - INDEX TERM--GENRE/FORM
Genre/form data or focus term Electronic books.
776 08 - ADDITIONAL PHYSICAL FORM ENTRY
Relationship information Print version:
Main entry heading Mukherjee, Arindam
Title Learning Boost C++ Libraries
Place, publisher, and date of publication Birmingham : Packt Publishing, Limited,c2015
International Standard Book Number 9781783551217
797 2# - LOCAL ADDED ENTRY--CORPORATE NAME (RLIN)
Corporate name or jurisdiction name as entry element ProQuest (Firm)
856 40 - ELECTRONIC LOCATION AND ACCESS
Uniform Resource Identifier <a href="https://ebookcentral.proquest.com/lib/orpp/detail.action?docID=2122136">https://ebookcentral.proquest.com/lib/orpp/detail.action?docID=2122136</a>
Public note Click to View

No items available.

© 2024 Resource Centre. All rights reserved.