| Home | Libraries | People | FAQ | More

## Chapter 19. Boost.Intrusive

### Olaf Krzikalla

### Ion Gaztanaga

Copyright © 2005 Olaf Krzikalla

Copyright © 2006-2015 Ion Gaztanaga

Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

## Introduction

### Presenting Boost.Intrusive

Boost.Intrusive is a library presenting some intrusive containers to the world of C++. Intrusive containers are special containers that offer better performance and exception safety guarantees than non-intrusive containers (like STL containers).

The performance benefits of intrusive containers makes them ideal as a building block to efficiently construct complex containers like multi-index containers or to design high performance code like memory allocation algorithms.

While intrusive containers were and are widely used in C, they became more and more forgotten in C++ due to the presence of the standard containers which don't support intrusive techniques.Boost.Intrusive wants to push intrusive containers usage encapsulating the implementation in STL-like interfaces. Hence anyone familiar with standard containers can easily use Boost.Intrusive.

### Building Boost.Intrusive

There is no need to compile anything to use Boost.Intrusive, since it's a header only library. Just include your Boost header directory in your compiler include path.

### Tested compilers

Boost.Intrusive has been tested on the following compilers/platforms:

- Visual C++ >= 7.1.
- GCC >= 4.1.

| Warning
GCC < 4.3 and MSVC < 9.0 are deprecated and will be removed in the next version.

Last revised: July 13, 2019 at 00:08:23 GMT |