Articles of boost

Parse a cité des cordes avec boost :: spirit

Je voudrais parsingr une phrase où certaines chaînes peuvent être sans guillemets, “entre guillemets” ou “entre guillemets”. Le code ci-dessous fonctionne presque – mais il ne correspond pas aux citations de fermeture. Je suppose que cela est dû à la référence qq. Une modification est commentée dans le code, la modification apparaît dans “cité” ou […]

Comment stocker des objects fonctionnels avec différentes signatures dans un conteneur?

Alors imaginons que nous ayons 2 fonctions (void : ( void ) ) et (std::ssortingng : (int, std::ssortingng)) et que nous pourrions en avoir 10 de plus. Tous (ou certains d’entre eux) prennent différents types d’argument et peuvent renvoyer différents types. Nous voulons les stocker dans un std::map , nous obtenons donc une API comme […]

Échapper à une chaîne C ++

Quel est le moyen le plus simple de convertir un st ++ :: ssortingng C ++ en un autre std :: ssortingng, qui contient tous les caractères non imprimables? Par exemple, pour la chaîne de deux caractères [0x61,0x01], la chaîne de résultat peut être “a \ x01” ou “a% 01”.

Comment filtrer les éléments d’un std :: map?

J’ai à peu près le code suivant. Cela pourrait-il être rendu plus agréable ou plus efficace? Peut-être en utilisant std::remove_if ? Pouvez-vous supprimer des éléments de la carte en la parcourant? Peut-on éviter d’utiliser la carte temporaire? typedef std::map Actions; static Actions _actions; bool expired(const Actions::value_type &action) { return ; } void bar(const Actions::value_type &action) […]

Ce comportement de vector :: resize (size_type n) sous C ++ 11 et Boost.Container est-il correct?

J’ai une application C ++ 03 où les types std::vector sont utilisés comme tampons temporaires. En tant que tels, ils sont souvent redimensionnés à l’aide de std::vector::resize() afin de s’assurer qu’ils sont suffisamment grands pour contenir les données requirejses avant utilisation. Le prototype C ++ 03 de cette fonction est en réalité: void resize(size_type n, […]

Est-ce que std :: vector ou boost :: vector thread est sans danger?

J’ai plusieurs threads appelant simultanément push_back() sur un object partagé de std::vector . std::vector thread est-il sûr? Ou dois-je implémenter le mécanisme moi-même pour le rendre thread-safe? Je veux éviter de faire un travail supplémentaire de “locking et de libération” car je suis un utilisateur de bibliothèque plutôt qu’un concepteur de bibliothèque. J’espère pouvoir rechercher […]

Stimuler les problèmes de skipper

J’ai des problèmes avec les skippers boost spirit. J’ai besoin d’parsingr un fichier comme ça: ROW int int [int, int] int [int, int] … Je suis capable de l’parsingr sans problème (grâce à stackoverflow;) seulement si j’ajoute un ‘_’ après le premier int. En fait, je pense que le skipper mange la fin de la […]

Comment puis-je composer des stream de sortie, de sorte que la sortie passe à plusieurs endroits à la fois?

J’aimerais composer deux (ou plus) stream en un seul. Mon objective est que toute sortie dirigée vers cout , cerr et clog soit également sortie dans un fichier, avec le stream d’origine. (Par exemple, lorsque des éléments sont connectés à la console. Après la fermeture, j’aimerais toujours pouvoir revenir en arrière et afficher le résultat.) […]

rétrograder boost :: function à un pointeur de fonction simple

veux passer boost :: bind à une méthode qui attend un pointeur de fonction simple (même signature). typedef void TriggerProc_type(Variable*,void*); void InitVariable(TriggerProc_type *proc); boost::function sortingggerProc … InitVariable(sortingggerProc); error C2664: ‘InitVariable’ : cannot convert parameter 1 from ‘boost::function’ to ‘void (__cdecl *)(type *,void *)’ Je peux éviter de stocker une fonction boost :: et simplement passer […]

boost_1_60_0 Installation de .zip dans Windows

J’ai effectué les étapes ci-dessous pour Windows 7 Boost link http://www.boost.org/doc/libs/1_49_0/libs/python/doc/ 1. Downloaded boost_1_60_0 .zip 2. cd \boost_1_60_0\tools\build 3. Ran below command in command prompt bootstrap.bat gcc bjam –toolset=gcc “–prefix=C:\DestinationFolder” install Now i have b2.exe & bjam.exe in C:\DestinationFolder\bin Quelqu’un peut-il m’aider s’il vous plaît dans ce qu’il faut faire ensuite que je suis incapable […]