タグ

関連タグで絞り込む (2)

タグの絞り込みを解除

boostに関するysibataのブックマーク (9)

  • とりあえず始めるBoost - 何かを勉強すると更新されるWiki

    shared pointer † 参照数をカウントし、参照されなくなったら自動で解放してくれる賢いポインタ。 STLのauto_ptrの発展版 Boostといえば有名なのはこれかも? 必要なヘッダ #include <boost/shared_ptr.hpp> using namespace boost; ↑ ユニットテスト用ライブラリ † http://boost.cppll.jp/HEAD/libs/test/doc/index.htm cppunitの代わり。 ヘッダのインクルードでライブラリをリンクしなくてもよくなるので、 環境が違うとライブラリの名前が微妙に違ったりするのを回避できる。 もちろんリンクですますこともできるけど。 さらに、マクロが充実してるのでテスト用の関数をいちいちmain()とかで登録する必要がない。 そもそもmain()かかなくても、テスト用

  • はてなブログ | 無料ブログを作成しよう

    読書感想】論理的思考とは何か ☆☆☆☆ 論理的思考とは何か (岩波新書 新赤版 2036)作者:渡邉 雅子岩波書店Amazon Kindle版もあります。論理的思考とは何か (岩波新書)作者:渡邉 雅子岩波書店Amazon 論理的思考法は世界共通ではない。思考する目的をまず明確にしてその目的に合った思考法を選ぶ技術が要る。…

    はてなブログ | 無料ブログを作成しよう
  • はてなブログ | 無料ブログを作成しよう

    年間約50現場通うアイドルオタクが選ぶ2024年現場ベスト3! こちらのブログでは初めまして。アイドルオタクブロガーのあややと申します。普段は「それは恋とか愛とかの類ではなくて」(https://moarh.hatenablog.jp/)というブログを書いています。この度、アイドルオタク友人たちと4人で交換日記を始めることになりました! …

    はてなブログ | 無料ブログを作成しよう
  • C++, boost::thread : スレッドの生成と実行

    C/C++でスレッドを扱う場合は、プラットフォームによって使用するライブラリが違います。 Windows なら Windows API の thread で、 UNIX や Linux 系ならば pthread ライブラリ等を使用します。プラットフォーム依存するコードは可搬性に難があり、解決策の1つとしてプリコンパイルで依存部分をプラットフォームに合わせたライブラリを選択してコンパイルする方法があります。 boost ライブラリの boost::thread は、上のような処理をラップして共通のインターフェイスとして実装されています。 boost/thread.hppの一部 #if defined(BOOST_THREAD_PLATFORM_WIN32) #include <boost/thread/win32/thread.hpp> #elif defined(BOOST_THREAD_

    C++, boost::thread : スレッドの生成と実行
  • letsboost::filesystem

    abstract 必要なヘッダ <boost/filesystem/path.hpp>, (パス文字列) <boost/filesystem/operations.hpp>, (ファイル操作) <boost/filesystem/fstream.hpp>, (ファイル入出力) <boost/filesystem/exception.hpp>, (例外) <boost/filesystem/convenience.hpp>, (便利関数色々) 出来ること ファイル・ディレクトリ操作 リファレンス en sample サンプルの動作確認バージョン [GCC4.4/1.41.0] [VC9/1.41.0] #include <iostream> #include <boost/filesystem/path.hpp> #include <boost/filesystem/operations.h

  • boost::regex での正規表現

    文字クラス 角カッコ([ ])で囲まれた部分は文字クラス表現となります。 角カッコで囲まれた文字は、「そのいずれかにマッチする」という意味になります。 例えば、 abc[ACD]123 という正規表現に対しては、 abcA123 abcC123 abcD123 はマッチしますが、 abcAC123 abcX123 などはマッチしません。 また、文字クラス内ではハイフン(-)を用いて「範囲」を表すことができます。 例えば、 abc[3-8]123 という正規表現に対しては abc3123 abc4123 ... abc8123 がマッチします。 さらに、ハット(^)を用いて「否定」を表すことができます。 例えば、 abc[^A-Z]123 という正規表現は文字クラス部分が「大文字のアルファベット以外」 を表現しているので、 abca123 abc%123 などがマッチしますが、 abcX12

  • 株式会社エス・スリー・フォー » 正規表現ライブラリ ‘Boost Regex++’ の使い方

    正規表現ライブラリ ‘Boost Regex++’ の使い方 ‘webを介したプログラムの実行’というアプリケーションの新しい形態が現れ、perl,pythonなどに代表されるスクリプト言語がよく利用されるようになりました。スクリプト言語の多くはテキストすなわち文字列を扱うのを得意としています。 一方C++は文字列を扱うのがあまり得意ではありません。 最近になってようやく文字列を表現するクラスstd::basic_string が標準ライブラリに組み入れられました。 これによって文字列操作を頻繁に行い、かつ移植性の高いアプリケーションの実装がとてもやりやすくなりました。 しかしながら標準の文字列を手に入れたC++でもperlなどのスクリプト言語にかなわないことの一つが’正規表現(regular expression)’です。 たとえばWebの自動巡回を行うアプリケーションを考えてみましょう

  • letsboost::regex

    sample サンプルの動作確認バージョン [GCC4.4/1.41.0] [VC9/1.41.0] #include <iostream> #include <string> #include <boost/regex.hpp> using namespace std; int main() { // <で始まって>で終わる文字列にマッチする正規表現で検索 boost::regex r( "<[^>]+>" ); boost::smatch m; string str1 = "The HTML tag <title> means that ..."; if( boost::regex_search(str1, m, r) ) { cout << "found (pos=" << m.position() << ")" << endl; cout << " ==> " << m.str()

  • Boost.Regexを使ってみる(2)

    Boost.Regexを使ってみる(1) 今回はMinGW環境下でBoost.Regexを使ってみます。 Boost.Regexはテンプレートだけではなく、ライブラリを必要としますのでリンクでregexのライブラリをリンクする必要があります。 正規表現の利用 regex_search regex_search は入力テキストに正規表現に一致するものが含まれている場合に、結果が真になります。 また、regex_matchとは異なり全ての一致を探します。 基的な使用例を記述します。 以下のコードは、文字列 "Free <em>Programming</em> For Windows." に対して、正規表現 "<[^>]+>" が一致するか検査しています。 string str("Free <em>Programming</em> For Windows."); boost::regex re

  • 1