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 Basic Programming Articles
Simplex Optimization Algorithm and Implemetation in C++ Programming
The article introduces the simplex algorithm, provides a useful C++ function to optimize target function parameters, and shows rich examples, figures, flowcharts. source code is also attached with the article.
An Efficient Pointer Wrapper in C++ for Scientific Computation
This article introduces a simple wrapper template.
C++ Tutorial: Pointer-to-Member Function
Botao Jia discusses the grammar of the C++ Pointer-to-Member Function, common applications and under-the-hood implementations.
Microsoft 'Hotfixes' Office 2003 Rights Glitch
The software giant moves quickly to address a problem impacting older, rights-managed documents.
Installing SQL Server 2008
Need your server and your site up and running quick? Let Greg Larsen show you what you need to know to get SQL Server running and configured.
Latest Developer Videos
More...Latest CodeGuru Developer Columns
Introduction to C++/CLI Programming
Become proficient at C++/CLI programming under the .NET context by posting a first CLR console base project.

Extension Methods Refresher
Use code extensions to expand the core principles of code re-use.

How to Draw Shapes with Visual Basic and GDI: Crescent Moons, Hearts, Spirals, and More
Learn how to create various odd shapes.

Maker Project: Creating a Garage Door Opener
Have you ever wanted to control your garage door from your smartphone? Here is your chance. Get your hands dirty with an Arduino Garage Door Controller.