Articles of boost

Tri des conteneurs compressés (verrouillés) en C ++ à l’aide de boost ou de la STL

Ce que je veux faire: Je veux sortinger 2, 3 ou N vecteurs, verrouillés ensemble, sans les copier dans un tuple. C’est-à-dire, en laissant de la verbosité de côté, quelque chose comme: vector v1 = { 1, 2, 3, 4, 5}; vector v2 = { 11, 22, 33, 44, 55}; vector v3 = {111, 222, […]

Quel est le problème avec boost.asio et fichier i / o?

J’ai remarqué que boost.asio a beaucoup d’exemples de sockets, de ports série et de toutes sortes d’exemples non liés à des fichiers. Google n’a pas vraiment trouvé beaucoup de choses pour moi qui mentionnent si asio est une bonne ou valide approche pour faire des E / S de fichiers asynchrones. J’ai des tonnes de […]

Est-il possible de construire Boost avec CMake?

Plutôt que d’inclure des bibliothèques statiques dans mon arbre source dans un projet compilé de manière croisée, j’aimerais append directement Boost dans cmake et le construire. Est-ce disponible?

Comment créer Boost avec le support C ++ 0x?

Je ne sais pas comment construire Boost avec les compilateurs C ++ 0x. Quelle option doit être donnée à bjam? Le fichier user.config doit-il être modifié? Quelqu’un peut-il m’aider? Best, Vicente

Y a-t-il un moyen d’itérer sur au plus N éléments en utilisant une boucle basée sur la distance?

Je voudrais savoir s’il y a un bon moyen d’itérer sur au plus N éléments dans un conteneur en utilisant la plage basée sur la boucle et / ou les algorithmes de la bibliothèque standard (c’est le but entier, je sais que je peux utiliser le “pour la boucle avec une condition). Fondamentalement, je recherche […]

Comment encoder une chaîne en base64 en utilisant uniquement le boost?

J’essaie d’encoder rapidement une simple chaîne ASCII en base64 (authentification HTTP de base en utilisant boost :: asio) et de ne pas coller de nouveau code ou d’utiliser des bibliothèques au-delà du boost. La signature simple ressemblerait à: ssortingng Base64Encode (chaîne et texte const); Encore une fois, je réalise que l’algorithme est simple et que […]

Est-ce que std :: bind devrait être compatible avec boost :: asio?

J’essaie d’adapter l’un des exemples boost :: asio pour utiliser les bibliothèques c ++ 11 / TR1 dans la mesure du possible. Le code d’origine ressemble à ceci: void start_accept() { tcp_connection::pointer new_connection = tcp_connection::create(acceptor_.get_io_service()); acceptor_.async_accept(new_connection->socket(), boost::bind(&tcp_server::handle_accept, this, new_connection, boost::asio::placeholders::error)); } Si je remplace boost::bind par std::bind comme suit: void start_accept() { tcp_connection::pointer new_connection = […]

La suppression fonctionne-t-elle avec des pointeurs vers la classe de base?

Devez-vous passer à supprimer le même pointeur renvoyé par new ou pouvez-vous lui passer un pointeur vers l’un des types de base de la classe? Par exemple: class Base { public: virtual ~Base(); … }; class IFoo { public: virtual ~IFoo() {} virtual void DoSomething() = 0; }; class Bar : public Base, public IFoo […]

Dans les bibliothèques C ++ Boost, pourquoi existe-t-il une extension «.ipp» sur certains fichiers d’en-tête?

Dans les bibliothèques C ++ Boost, pourquoi existe-t-il une extension “.ipp” sur certains fichiers d’en-tête? Il semble qu’ils soient des fichiers d’en-tête inclus par le fichier “.hpp” du même nom. Cette convention est-elle courante en dehors de Boost? Quelle est la justification pour avoir un type de fichier spécial?

Arguments vectoriels dans les options du programme Boost

J’ai deux questions connexes: Quelle est la manière la plus simple de passer une série de valeurs en utilisant les options du programme Boost? Mon but est d’éviter prog –opt 1 –opt 2 –opt 3 et avoir prog –opt 1 2 3 place. Quelle est la manière la plus simple d’avoir une option qui prend […]