Boost

Z KdmWiki
Wersja z dnia 09:04, 18 paź 2018 autorstwa Adamprz (dyskusja | edycje) (Utworzono nową stronę "<small>< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie systemowe i narzędziowe</small> '''Boost''' - kolekcja bibliotek programistyczn...")
(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)
Przejdź do nawigacji Przejdź do wyszukiwania

< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie systemowe i narzędziowe

Boost - kolekcja bibliotek programistycznych poszerzających możliwości języka C++.

Dostępne wersje na klastrze Bem:

  • 1.59.0
  • 1.62.0
  • 1.68.0(default).


Licencja

Biblioteki są rozpowszechniane na licencji Boost Software License.


Korzystanie

Boost 1.68.0 jest dostępny w katalogu:

/usr/local/boost/gcc-6.2.0/1.68.0/
|-- include
|   `-- boost-1_68
|       `-- boost
|           |-- accumulators
|           |-- algorithm
|           |-- align
|           |-- archive
|           |-- asio
|           |-- assign
|           |-- ...
|           |-- ...
|           |-- iterator
|           |-- lambda
|           |-- ...
|           |-- ...
|           |-- uuid
|           |-- variant
|           |-- vmd
|           |-- wave
|           |-- winapi
|           |-- xpressive
|           `-- yap
`-- lib

Użycie:

> module avail boost
> module load boost/wybrana_wersja


Przykład

Przykładowy program example.cpp:

#include <boost/lambda/lambda.hpp>
#include <iostream>
#include <iterator>
#include <algorithm>

int main()
{
    using namespace boost::lambda;
    typedef std::istream_iterator<int> in;

    std::for_each(
        in(std::cin), in(), std::cout << (_1 * 3) << " " );
    std::cout << "\n";
}

Kompilacja:

> g++ -I$BOOST_INCLUDE example.cpp -o example

Testowanie wyniku:

 > echo 1 2 3 4 5 | ./example
 3 6 9 12 15
Linki zewnętrzne


Zobacz też: Oprogramowanie systemowe i narzędziowe, maszyny obliczeniowe