Overvies

CLX C++ Libraries は，文字列処理やネットワークプログラミングの補助などを行うための， ヘッダファイルのみで構成された C++ ライブラリです． CLX C++ Libraries は， BSDライセンスで配布しています．ソースコードの複製・改変は自由ですが， 自己責任でお願い致します．

Usage

CLX C++ Libraries を使用する際には，以下のファイルをダウンロードし， 解凍して出来た clx フォルダ以下のヘッダファイルを作業フォルダにコピーするか， または，インクルードオプションを適切に指定して下さい． CLX C++ Libraries で作成したクラスは clx 名前空間の中に定義してあります． 利用する場合は，直接指定するか適切な using ディレクティブを指定して下さい． 動作確認は gcc 4.0.2 (Linux), gcc 4.3.4 (cygwin)，Visual Studio 2010, Borland C++ Compiler 5.5 で行っています． そのため，ソケット等システムに依存する部分はPOSIX および Windows のみに対応しています． また，コンパイラによっては利用できないライブラリも存在します．コンパイラ毎のエラー状況については， コンパイラ毎のエラー状況 を参照して下さい．

CLX C++ Libraris の一部のライブラリは，外部ライブラリを利用しています． これらのライブラリは Linux 環境ではデフォルトでインストールされている事も多いですが， Windows 環境にはインストールされていません．Windows 上で CLX C++ Libraries の全てのライブラリを使用するための環境設定については， VC++ 2010 の環境設定， Borland C++ Compiler 5.5 の環境設定などを参照して下さい．

最新のリリース，および関連ファイルは SourceForge.JP - CLX C++ Libraries から取得することができます． また，（リリース前の）最新のソースコードは， svn/clx， svn/clx/example にて閲覧/取得することができます．尚，clx_doc，clx_example はそれぞれ， 本サイトで公開しているリファレンス・ドキュメント， サンプルコード群をアーカイブ化したものです．ドキュメントをオフラインで閲覧したり， サンプルコードをまとめて取得したい場合は，以下のリンクからダウンロードして下さい． Web ページの表示チェックは，Internet Explorer 8.0, Firefox 3.6 で行っています．

使用例などについては，各ライブラリの説明ページの他，blog でもいくつか紹介しています．

Contents

文字列とテキスト salgorithm ..... 文字列アルゴリズム群

adjust ..... 文字列の位置調整

case_conv ..... 大文字/小文字の変換

remove ..... 特定文字の消去

replace ..... 文字列の置換

split ..... 文字列の分割/結合

strip ..... 空白文字の除去

predicate ..... 叙述関数群

cstring ..... C 標準ライブラリ (cstring) のラッパ関数群

lexical_cast ..... 文字列 <-> 数値の相互変換

code_convert ..... ナロー文字 <-> ワイド文字の相互変換

tokenizer ..... 文字列のトークン分割

table ..... 整形済みテキストファイルの読み込み

scanner ..... 書式付き文字列の読み込み

format ..... 書式付き文字列の書き出し

utf8 ..... UTF-8 の文字列を操作するための補助関数群

ソケット

socket ..... 各種ソケットの基底クラス sockaddress ..... ソケットアドレス udp::socket ..... UDP 用ソケット tcp::socket ..... TCP 用ソケット tcp::acceptor ..... TCP サーバ用ソケット ssl::socket ..... SSL 通信用ソケット ssl::acceptor ..... SSL 通信用サーバソケット icmp::socket ..... ICMP 用ソケット sockmanager ..... 複数のソケットの入力状況の管理

sockhandler ..... sockhandler の実装例

ssl::sockmanager ..... SSL ソケット用 sockmanager

ネットワークサービス

resolver ..... 名前解決

localhost ..... ローカルホストの IP アドレスを取得

http/https ..... HTTP/HTTPS (HTTP over SSL) 通信

smtp/smtps ..... SMTP/SMTPS (SMTP over SSL) 通信

pop3/pop3s ..... POP3/POP3S (POP3 over SSL) 通信

ftp ..... FTP 通信

hmac ..... HMAC によるダイジェストの計算

wsse ..... WSSE 認証用 HTTP リクエスト文字列の生成

json ..... JSON 形式データの解析

エンコード

uri ..... URI の encode/decode base64 ..... Base64 方式の encode/decode hexdump ..... 文字列を 16 進数で出力 html::escape ..... html 制御文字のエスケープ

ストリーム

istream_utility ..... 入力ストリームの補助関数群 vstream ..... 仮想ストリーム sockstream ..... ソケット通信用ストリーム zstream ..... zlib を用いた圧縮/解凍のためのストリームフィルタ unzip ..... zip の解凍

スレッド

日付と時刻

timer ..... タイマー

数値

unit ..... 単位を定義するためのクラス constrained_value ..... 制約付きの値 random ..... ランダムな値の生成 md5 ..... MD5 方式のハッシュ値の計算 sha1 ..... SHA-1 方式のハッシュ値の計算 stats ..... 統計計算 quantile ..... 分位点の計算

文字列とテキスト

ネットワーク

エンコード

ストリーム

スレッド

日付と時刻

その他

History