boost::bind
I have been using a variant of the boost::bind framework for years now, and it is easily one of my favorite. In short, it creates a function object that can contains associated (and optional) values for its arguments. That is, the end result can be a nullary function object in which all parameters values are already provided, or optional parameters rerouting parameters to any position.
Read more…
boost::bimap
The boost::bimap framework offers a bi-directional version of the STL map container. That is, both members of its pair elements can be used as a key to access its counterpart.
Read more…
boost::assign
The boost:assign framework is a collection of utilities to facilitate standard (STL) containers addition of data. I will try to brush an overview of its most important features.
Read more…
boost::asio
Asio is the first BIG boost framework I encountered. The documentation reading was fantastic, which I supplemented with some googling. In short, Asio seems to be considered one of the very best communication library around, and it’s easy to see why.
Read more…
boost::array
This is another easy Boost class to tackle. The C++ STL provides a plethora of specialized collection containers, all of them respecting a strict access interface that let them interact with common algorithms. The problem is, there’s no direct substitute to the plain old, static C array. The closest STL relative would be the std::vector, but it is implemented to allow dynamic sizing, which means some overhead unnecessary to handle plain statically sized arrays.
Read more…
boost::any
Now this is a simple and straightforward one. Many scripting languages have untyped variables, in which you can places values of any kinds. C++ being a strongly typed language doesn’t have that feature naturally. But Boost brings a simple solution.
Read more…