Vectors are one of the single most useful and most used objects in the STL. They are easy to use, and remove the burden of memory management from the user. It is possible to partially control memory usage by using functions like reserve
, but nothing is provided to free up excess memory. Users have come up with ways to trim a vector by hand, but with the advent of the new C++0x and its move semantics, the classic solution of copy-swaping has become excessively expensive. This article seeks to find a better solution.
Latest General Articles
C++ Tutorial: 10 New STL Algorithms That Will Make You A More Productive Developer
Unquestionably, the most effective tool for a C++ programmer's productivity is the Standard library's rich collection of algorithms. In 2008, about 20 new algorithms were voted into the C++0x draft standard. These new algorithms let you among the rest copy n elements intuitively, perform set theory operations, and handle partitions conveniently. Find out how to use these algorithms to make your code more efficient and intuitive.
Classification Of Point In Polygon
Classify a point respect to a plane polygon that can be concave (i.e. with some angle grater than 180 degrees). Good performance, excellent stability.
Linear Search based algorithm for Mth Lexicographic ordering of Mathematical Permutation and Combina
Algorithms to compute the M-th lexicographic ordering of a permutation or combination and the inverse problem of the rank of a given permutation or sequence.
Tip: An Optimized Formula for Alpha Blending Pixels
Discover how to optimize by simplifying the formula.
Making a Class Schedule Using a Genetic Algorithm
Learn how to make a class schedule by using a genetic algorithm.
Latest Developer Videos
More...Latest CodeGuru Developer Columns
C++ Tips and Tricks
Quirky and yet persistent, C++ is a language that keeps programmers coming back to it. Pick up some new ways to wrangle it into your workflow.

Working with Google Protocol Buffers and .NET
Learn about something called "Google Protocol Buffers," and watch for later posts on other IoT subjects.

Working with Primes and Fibonacci Sequences in Visual Basic
Play with the Fibonacci sequence and prime numbers in this example-driven article.

Lesson Learned: The Need for a Domain Language
Translation costs time and money, and can affect the quality of the product being made. Make sure all your team members speak the same language.