SlideShare a Scribd company logo
1 of 25
Download to read offline
C++のライブラリを
簡単に眺めてみよう
H.Hiro @ Sapporo.cpp
http://hhiro.net/
Twitter: @h_hiro_ github: maraigue
2017/3/19 1でじぽろ #13 & 札幌C++勉強会
自己紹介
H.Hiro
• 札幌(30年ちょっと在住)→名古屋(そろそろ3年目)
• 現在札幌在住じゃないけどSapporo.cppの運営やってます
• 情報系の研究の仕事してます
• 仕事ではC++がメイン、個人的にはRubyをよく使う、
最近Pythonをたまに使ったり
2017/3/19 2でじぽろ #13 & 札幌C++勉強会
今日話すこと
• C++の標準ライブラリを簡単に巡ってみる
– 細かい機能までは立ち入りません
• C++を使ったことがない方:
– 「C++では標準でこんなことができるよ!」と
いうのを知ることで、C++利用の助けになってほしい
– 「他の言語を利用しているけどC++はまだ」って
方は、ぜひ比較しながら眺めてみてほしい
• C++を使っているという方:
– 意外と知らないライブラリが見つかるかも?
2017/3/19 でじぽろ #13 & 札幌C++勉強会 3
C++の標準ライブラリ
• C言語のような不便さは想像しないでほしい。
それと比べるとかなり充実している
– オブジェクト指向が言語に取り入れられているため
ライブラリ設計がしやすいという事情もあるかと
• 標準規格が進化し続いている
(C++98→ C++03→C++11→C++14→C++17…)
– 最近のコンパイラを導入すれば、少なくとも
C++11の機能はだいたい対応しているはず
– コンパイラで対応してなくても、Boost C++ Library
で類似の機能が使える場合が多い
– 以下本文中では、「C++11で規格化」のことを
記号「*11」で表します(*14、*17も同様)
2017/3/19 4でじぽろ #13 & 札幌C++勉強会
リファレンスを見てみる
• 日本語だと https://cpprefjp.github.io/
• 英語だと http://en.cppreference.com/w/
が有名だろうか。
MSDNを読むこともあるかな。
2017/3/19 でじぽろ #13 & 札幌C++勉強会 5
リファレンスを見てみる
• https://cpprefjp.github.io/
2017/3/19 でじぽろ #13 & 札幌C++勉強会 6
リファレンスを見てみる
• https://cpprefjp.github.io/
• ずらっと
並んでます
2017/3/19 でじぽろ #13 & 札幌C++勉強会 7
解説
• これじゃ何ができるのかわからないよね!
• ということで、私がいくつか分類してみたので
紹介したいと思います
2017/3/19 でじぽろ #13 & 札幌C++勉強会 8
(1) 基本中の基本
2017/3/19 でじぽろ #13 & 札幌C++勉強会 9
ヘッダ
ファイル名
内容
iostream
入出力。最初勉強するのにどうしても
必要になるから、みんな遭遇するはず。
fstream ファイル入出力。iostreamと似た使い方。
string 文字列
vector 可変長配列
• 文字列や可変長配列が、C言語のように自前でポインタを
扱わなくても利用できる。
• ほか、スマートポインタ(後述)や参照型(詳細略)
などもあり、C++でポインタを生で扱う必要性は薄い。
(2)プログラム内部の
データフォーマットに (1/2)
2017/3/19 でじぽろ #13 & 札幌C++勉強会 10
ヘッダ
ファイル名
内容
map
unordered_map*11 連想配列
deque
list
forward_list*11
vectorと似るが計算コストが異なる。
詳しくは私の以前の発表を
https://www.slideshare.net/maraigue/choosing-
typesinstl
utility 「二つの値の組」を表すpair型が便利。
tuple*11 pairと似るが、三つ以上の組も可。
set
unordered_set*11
集合や多重集合。
出現数を数えたり重複を排除したり。
配列や連想配列の注意点
C++では、
["3.14", 3.14, [3, 1, 4]] とか {"foo": "bar", "hoge": 1} など
複数の型の値が混ざった配列や連想配列は
単純には作れない。
• 型の制限が緩い言語ならあまり困らないし、
JavaやC#でもObject型を使えばよいのだけど、
C++でそれらに相当することを(自前で)しようと
するとかなり面倒。
• 作れないわけではない(工夫すれば作れるし
そういう外部ライブラリもある)のだが、ここでは
省略する。
2017/3/19 でじぽろ #13 & 札幌C++勉強会 11
(2)プログラム内部の
データフォーマットに (2/2)
2017/3/19 でじぽろ #13 & 札幌C++勉強会 12
ヘッダ
ファイル名
内容
array*11 固定長配列のクラス。
単に arr[10] とかで定義するよりも便利。
bitset
固定長のビット配列(可変長は
vector<bool>を使うという方法あり)。
valarray
vectorと似るが、複数の数値に対して
一括で処理をする(例:すべての要素を
2倍する)に適している。
環境によっては並列最適化される。
• 分数を表すクラス(つまり、分数の加減乗除等ができる)
は、どういうわけか標準化されていない。
私は必要ならboost.rationalを使ったりしている。
(3)数学や統計処理など (1/2)
2017/3/19 でじぽろ #13 & 札幌C++勉強会 13
ヘッダ
ファイル名
内容
cmath
各種数学関数。
ただし、数学関数でも一部はcstdlibに。
complex 複素数。2次元空間の座標としても。
ratio*11 分数を表す定数。
C言語のライブラリをC++で使う
• 先程の cmath は、C言語の math.h のC++対応版
• 他のC言語のヘッダファイルも同様に#includeできる
• cmathなどを使うと、std::関数名 で呼び出すことになる
→グローバル関数を余計に作らなくて済む
2017/3/19 でじぽろ #13 & 札幌C++勉強会 14
#include <cmath>
int main(void){
double x = std::log(2);
...
}
#include <math.h>
int main(void){
double x = log(2);
...
}
(3)数学や統計処理など (2/2)
2017/3/19 でじぽろ #13 & 札幌C++勉強会 15
ヘッダ
ファイル名
内容
algorithm
配列等に対し、全要素を見て行う
処理を提供する関数群。「検索する」
「ソート(順に並び替える)」など
numeric
algorithmに似るが、数値関連のものが
ここにある。「全要素の総和」など。
random*11
疑似乱数発生のための各種クラス。
C言語スタイルの乱数(<cstdlib>で可能)
よりもできることはかなり増えている。
「検索する」とか「ソートする」とかが
別のヘッダファイルにある?
• 「検索する」とか「ソートする」とかは、他の言語だと
配列等のメソッドとして定義されているものも多い。
• C++では、std::findやstd::sortなどの関数に
配列等の先頭・末尾を指定するようになっている。
std::vector<int> v = ...;
// 「10」という要素を探してイテレータを返す
auto it = std::find(v.begin(), v.end(), 10);
https://cpprefjp.github.io/reference/algorithm/find.html
• C++の言語仕様の範囲内で、なおかつ
「どんな型でも、所定の要件を満たしていればstd::find
(など)に与えてよい」という仕様にするには
こうするしかなかった?
2017/3/19 でじぽろ #13 & 札幌C++勉強会 16
(4)文字列関連
2017/3/19 でじぽろ #13 & 札幌C++勉強会 17
ヘッダ
ファイル名
内容
regex*11 正規表現。
sstream
文字列ストリーム。
標準入出力やファイルに書き出すような
方法で、文字列を生成できる。
string_view*17
(部分)文字列をコピーせずに取得する。
詳しくは私の以前の発表を
https://www.slideshare.net/maraigue/boost-21-
c1zstringview
(5)スレッド
2017/3/19 でじぽろ #13 & 札幌C++勉強会 18
ヘッダ
ファイル名
内容
thread*11 スレッド。複数の処理を並行して行う
際に用いる。
future*11 スレッドを使って「他の処理が終わるまで
待つ」という状況を表現する。
condition_
variable*11
指定した条件が満たされるまで、スレッドを
待たせる。
mutex*11 ミューテックスによる排他制御。
atomic*11 アトミック(不可分な)処理のライブラリ。
mutexよりできることは限られるが軽い。
(6)その他
2017/3/19 でじぽろ #13 & 札幌C++勉強会 19
ヘッダ
ファイル名
内容
iomanip
入出力のフォーマット定義。
「小数点以下~桁まで出力」など。
一部は <ios> に定義。
ios 入出力全般に必要な処理を定義。
chrono 時間・時刻を表現するためのクラスなど。
stdexcept 例外を表すクラスが定義されている。
exception 例外を扱う関数等が定義されている。
filesystem*17 ファイル操作(コピーなど)
(7)上級編 (1/2)
• C++11では他にも無名関数が規格化されるなど、
関数オブジェクト周辺の使い勝手がかなり向上して
います。
• スマートポインタについては次頁で説明します。
2017/3/19 でじぽろ #13 & 札幌C++勉強会 20
ヘッダ
ファイル名
内容
functional
基本的な関数に対する関数オブジェクト
(加算など)や、function型*11
(関数を保持する型)などを定義。
memory
メモリ管理関連のクラスや関数群。
よく使うのは「スマートポインタ」*11。
スマートポインタとは
• newしたメモリ領域のdeleteを、一定の条件下で
勝手に行ってくれる。
• unique_ptr(newした領域が1か所からしか参照されない
場合に用いる)、shared_ptr(2か所以上でも対応)、
weak_ptr(詳細略)がある。
• C++ではガベージコレクションがないため、
メモリの解放をコントロールすることは重要
2017/3/19 でじぽろ #13 & 札幌C++勉強会 21
スマートポインタとは
• newしたメモリ領域のdeleteを、一定の条件下で
勝手に行ってくれる。
• unique_ptr(newした領域が1か所からしか参照されない
場合に用いる)、shared_ptr(2か所以上でも対応)、
weak_ptr(詳細略)がある。
2017/3/19 でじぽろ #13 & 札幌C++勉強会 22
#include <memory>
int main(void){
std::unique_ptr<Cls> obj
= std::unique_ptr<Cls>(new Cls());
...
// newした領域は勝手にdeleteされる
}
int main(void){
Cls * obj = new Cls();
...
delete obj;
}
サンプルコード http://melpon.org/wandbox/permlink/Iqu0g3MF5aRqE9aQ
(7)上級編 (2/2)
2017/3/19 でじぽろ #13 & 札幌C++勉強会 23
ヘッダ
ファイル名
内容
typeinfo
実行時型情報。
型の名前を得たり、型が同じであるかの
判断が、実行時にできる。
type_traits*11
「ある型にconstを付けたもの」など、
型に対する加工を行う(コンパイル時)。
templateと組み合わせて用いることが
多いだろうか。
おわりに
2017/3/19 でじぽろ #13 & 札幌C++勉強会 24
おわりに
• C++標準ライブラリをいくつか紹介してきました。
• C++を使っていると比較的問題になりやすい
(こういうことできるだろうか?と考える)ような
標準ライブラリを中心に紹介しました。
• 実際まだもう少しあります。残るヘッダファイル:
<typeindex> <initializer_list> <new> <scoped_allocator> <limits>
<system_error> <deque> <stack> <queue> <iterator> <streambuf>
<locale> <codecvt>
(C言語にもあるもの、紹介したヘッダファイルの機能を限定したもの、
非推奨のもの、C++14以降で規格化されたものは除外)
• これを、「C++の標準ライブラリだけでこんなこと
できるんだっけ…?」と考えるにあたっての
手掛かりにしていただければ幸いです。
2017/3/19 でじぽろ #13 & 札幌C++勉強会 25

More Related Content

What's hot

Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.kiki utagawa
 
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Preferred Networks
 
中3女子でもわかる constexpr
中3女子でもわかる constexpr中3女子でもわかる constexpr
中3女子でもわかる constexprGenya Murakami
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?Moriharu Ohzu
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門Norishige Fukushima
 
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】MOCKS | Yuta Morishige
 
マルチコアを用いた画像処理
マルチコアを用いた画像処理マルチコアを用いた画像処理
マルチコアを用いた画像処理Norishige Fukushima
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編Fixstars Corporation
 
5_C言語入門 - 変数について
5_C言語入門 - 変数について5_C言語入門 - 変数について
5_C言語入門 - 変数についてbc_rikko
 
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015SaitoTsutomu
 
NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門Shiqiao Du
 
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとはTakuya Akiba
 
関数プログラミング入門
関数プログラミング入門関数プログラミング入門
関数プログラミング入門Hideyuki Tanaka
 
工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方ychtanaka
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろうKota Mizushima
 
エラーハンドリング
エラーハンドリングエラーハンドリング
エラーハンドリング道化師 堂華
 
最適化超入門
最適化超入門最適化超入門
最適化超入門Takami Sato
 

What's hot (20)

Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
 
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
Pythonの理解を試みる 〜バイトコードインタプリタを作成する〜
 
中3女子でもわかる constexpr
中3女子でもわかる constexpr中3女子でもわかる constexpr
中3女子でもわかる constexpr
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
 
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】【プレゼン】見やすいプレゼン資料の作り方【初心者用】
【プレゼン】見やすいプレゼン資料の作り方【初心者用】
 
マルチコアを用いた画像処理
マルチコアを用いた画像処理マルチコアを用いた画像処理
マルチコアを用いた画像処理
 
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
CPU / GPU高速化セミナー!性能モデルの理論と実践:実践編
 
5_C言語入門 - 変数について
5_C言語入門 - 変数について5_C言語入門 - 変数について
5_C言語入門 - 変数について
 
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
組合せ最適化を体系的に知ってPythonで実行してみよう PyCon 2015
 
Emcpp0506
Emcpp0506Emcpp0506
Emcpp0506
 
研究効率化Tips Ver.2
研究効率化Tips Ver.2研究効率化Tips Ver.2
研究効率化Tips Ver.2
 
NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門
 
勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは勉強か?趣味か?人生か?―プログラミングコンテストとは
勉強か?趣味か?人生か?―プログラミングコンテストとは
 
関数プログラミング入門
関数プログラミング入門関数プログラミング入門
関数プログラミング入門
 
工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方工学系大学4年生のための論文の読み方
工学系大学4年生のための論文の読み方
 
機械学習と主成分分析
機械学習と主成分分析機械学習と主成分分析
機械学習と主成分分析
 
メタプログラミングって何だろう
メタプログラミングって何だろうメタプログラミングって何だろう
メタプログラミングって何だろう
 
エラーハンドリング
エラーハンドリングエラーハンドリング
エラーハンドリング
 
最適化超入門
最適化超入門最適化超入門
最適化超入門
 

Viewers also liked

Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...
Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...
Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...PT. PLN (Persero)
 
MicroPython に手出してみないか?
MicroPython に手出してみないか?MicroPython に手出してみないか?
MicroPython に手出してみないか?Minoru Inachi
 
3Com 80-001958-02
3Com 80-001958-023Com 80-001958-02
3Com 80-001958-02savomir
 
Golf Growing in Popularity with Women in Asia
Golf Growing in Popularity with Women in AsiaGolf Growing in Popularity with Women in Asia
Golf Growing in Popularity with Women in AsiaLuisa De Roo
 
Diagnóstico y tratamiento de dermatofitosis y pitiriasis versicolor
Diagnóstico y tratamiento de dermatofitosis y pitiriasis versicolorDiagnóstico y tratamiento de dermatofitosis y pitiriasis versicolor
Diagnóstico y tratamiento de dermatofitosis y pitiriasis versicolorIPN
 
Metodos de Union (Soldadura)
Metodos de Union (Soldadura)Metodos de Union (Soldadura)
Metodos de Union (Soldadura)Paola Reyes
 
Creativity and Copywriting - Video
Creativity and Copywriting - VideoCreativity and Copywriting - Video
Creativity and Copywriting - VideoMargery Lynn
 
Revisión física del equipo de computó
Revisión física del equipo de computóRevisión física del equipo de computó
Revisión física del equipo de computóJoshua Ramos
 
Linea del tiempo historia de la tecnología
Linea del tiempo historia de la tecnología Linea del tiempo historia de la tecnología
Linea del tiempo historia de la tecnología kimberly rodriguez
 
Performance Management
Performance ManagementPerformance Management
Performance ManagementMin Jeong Lee
 
Curiculum Vitae
Curiculum VitaeCuriculum Vitae
Curiculum VitaeAli usman
 

Viewers also liked (18)

Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...
Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...
Be & gg, indra sigit anggita, hapzi ali, philosophical ethics and business, u...
 
MicroPython に手出してみないか?
MicroPython に手出してみないか?MicroPython に手出してみないか?
MicroPython に手出してみないか?
 
3Com 80-001958-02
3Com 80-001958-023Com 80-001958-02
3Com 80-001958-02
 
Golf Growing in Popularity with Women in Asia
Golf Growing in Popularity with Women in AsiaGolf Growing in Popularity with Women in Asia
Golf Growing in Popularity with Women in Asia
 
Diagnóstico y tratamiento de dermatofitosis y pitiriasis versicolor
Diagnóstico y tratamiento de dermatofitosis y pitiriasis versicolorDiagnóstico y tratamiento de dermatofitosis y pitiriasis versicolor
Diagnóstico y tratamiento de dermatofitosis y pitiriasis versicolor
 
Metodos de Union (Soldadura)
Metodos de Union (Soldadura)Metodos de Union (Soldadura)
Metodos de Union (Soldadura)
 
vaginal bleeding in early pregnancy
vaginal bleeding in early pregnancyvaginal bleeding in early pregnancy
vaginal bleeding in early pregnancy
 
Creativity and Copywriting - Video
Creativity and Copywriting - VideoCreativity and Copywriting - Video
Creativity and Copywriting - Video
 
Approach to chronic kidney disease
Approach to chronic kidney diseaseApproach to chronic kidney disease
Approach to chronic kidney disease
 
Revisión física del equipo de computó
Revisión física del equipo de computóRevisión física del equipo de computó
Revisión física del equipo de computó
 
Idea de la metafísica julián marías
Idea de la metafísica julián maríasIdea de la metafísica julián marías
Idea de la metafísica julián marías
 
Moder poetry1
Moder poetry1Moder poetry1
Moder poetry1
 
Linea del tiempo historia de la tecnología
Linea del tiempo historia de la tecnología Linea del tiempo historia de la tecnología
Linea del tiempo historia de la tecnología
 
Performance Management
Performance ManagementPerformance Management
Performance Management
 
Tango withwagtail
Tango withwagtailTango withwagtail
Tango withwagtail
 
Práctica con quandaray
Práctica con quandarayPráctica con quandaray
Práctica con quandaray
 
P2 p
P2 pP2 p
P2 p
 
Curiculum Vitae
Curiculum VitaeCuriculum Vitae
Curiculum Vitae
 

Similar to C++のライブラリを簡単に眺めてみよう

札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」Hiro H.
 
その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】
その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】
その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】Hiro H.
 
2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」
2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」
2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」Hiro H.
 
式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~Hiro H.
 
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」tokyorgirls
 
今日から始めるGopher - スタートGo #0 @GDG名古屋
今日から始めるGopher - スタートGo #0 @GDG名古屋今日から始めるGopher - スタートGo #0 @GDG名古屋
今日から始めるGopher - スタートGo #0 @GDG名古屋Takuya Ueda
 
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)Hiro H.
 
Cプログラマのためのカッコつけないプログラミングの勧め
Cプログラマのためのカッコつけないプログラミングの勧めCプログラマのためのカッコつけないプログラミングの勧め
Cプログラマのためのカッコつけないプログラミングの勧めMITSUNARI Shigeo
 
C++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISるC++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISるHideyuki Tanaka
 
C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)
C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)
C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)Hiro H.
 
C#言語機能の作り方
C#言語機能の作り方C#言語機能の作り方
C#言語機能の作り方信之 岩永
 
2017/12/21 虎の穴 Python勉強会
2017/12/21 虎の穴 Python勉強会2017/12/21 虎の穴 Python勉強会
2017/12/21 虎の穴 Python勉強会虎の穴 開発室
 
rpi_handson_2.5
rpi_handson_2.5rpi_handson_2.5
rpi_handson_2.5teruyaono1
 
HiroshimaR6_Introduction
HiroshimaR6_IntroductionHiroshimaR6_Introduction
HiroshimaR6_IntroductionSAKAUE, Tatsuya
 
High performance python computing for data science
High performance python computing for data scienceHigh performance python computing for data science
High performance python computing for data scienceTakami Sato
 
関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』Kenta USAMI
 
天気予報ガジェットを作りな がら、Pythonを勉強しよう
天気予報ガジェットを作りな がら、Pythonを勉強しよう天気予報ガジェットを作りな がら、Pythonを勉強しよう
天気予報ガジェットを作りな がら、Pythonを勉強しようHiroki Yato
 
ぼくとしりとりの約3.0*10^3日間戦争
ぼくとしりとりの約3.0*10^3日間戦争ぼくとしりとりの約3.0*10^3日間戦争
ぼくとしりとりの約3.0*10^3日間戦争Eric Sartre
 

Similar to C++のライブラリを簡単に眺めてみよう (20)

札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
 
その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】
その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】
その文字列検索、std::string::findだけで大丈夫ですか?【Sapporo.cpp 第8回勉強会(2014.12.27)】
 
2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」
2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」
2011.7.3 札幌C++勉強会#2「C++のマクロはどこまで関数をいじれるのか」
 
式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~
 
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
Tokyo.R女子部発表スライド「Rではじめるデータ解析の超基礎」
 
今日から始めるGopher - スタートGo #0 @GDG名古屋
今日から始めるGopher - スタートGo #0 @GDG名古屋今日から始めるGopher - スタートGo #0 @GDG名古屋
今日から始めるGopher - スタートGo #0 @GDG名古屋
 
dwangocpp1-lt
dwangocpp1-ltdwangocpp1-lt
dwangocpp1-lt
 
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
STLの型の使い分け(ダイジェスト版) @ Sapporo.cpp 第7回勉強会 (2014.10.18)
 
Cプログラマのためのカッコつけないプログラミングの勧め
Cプログラマのためのカッコつけないプログラミングの勧めCプログラマのためのカッコつけないプログラミングの勧め
Cプログラマのためのカッコつけないプログラミングの勧め
 
C++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISるC++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISる
 
C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)
C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)
C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)
 
C#言語機能の作り方
C#言語機能の作り方C#言語機能の作り方
C#言語機能の作り方
 
2017/12/21 虎の穴 Python勉強会
2017/12/21 虎の穴 Python勉強会2017/12/21 虎の穴 Python勉強会
2017/12/21 虎の穴 Python勉強会
 
rpi_handson_2.5
rpi_handson_2.5rpi_handson_2.5
rpi_handson_2.5
 
HiroshimaR6_Introduction
HiroshimaR6_IntroductionHiroshimaR6_Introduction
HiroshimaR6_Introduction
 
High performance python computing for data science
High performance python computing for data scienceHigh performance python computing for data science
High performance python computing for data science
 
関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』関数型都市忘年会『はじめての函数型プログラミング』
関数型都市忘年会『はじめての函数型プログラミング』
 
Cppmix 01
Cppmix 01Cppmix 01
Cppmix 01
 
天気予報ガジェットを作りな がら、Pythonを勉強しよう
天気予報ガジェットを作りな がら、Pythonを勉強しよう天気予報ガジェットを作りな がら、Pythonを勉強しよう
天気予報ガジェットを作りな がら、Pythonを勉強しよう
 
ぼくとしりとりの約3.0*10^3日間戦争
ぼくとしりとりの約3.0*10^3日間戦争ぼくとしりとりの約3.0*10^3日間戦争
ぼくとしりとりの約3.0*10^3日間戦争
 

More from Hiro H.

pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!Hiro H.
 
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説Hiro H.
 
シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)
シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)
シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)Hiro H.
 
「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)
「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)
「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)Hiro H.
 
配列の要素挿入・削除もランダムアクセスも両方高速にできる?
配列の要素挿入・削除もランダムアクセスも両方高速にできる?配列の要素挿入・削除もランダムアクセスも両方高速にできる?
配列の要素挿入・削除もランダムアクセスも両方高速にできる?Hiro H.
 
PCSじゃないよ、PCAだよ
PCSじゃないよ、PCAだよPCSじゃないよ、PCAだよ
PCSじゃないよ、PCAだよHiro H.
 
声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~
声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~
声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~Hiro H.
 
スマホ音楽ゲームの動画から譜面をデータ化したかった
スマホ音楽ゲームの動画から譜面をデータ化したかったスマホ音楽ゲームの動画から譜面をデータ化したかった
スマホ音楽ゲームの動画から譜面をデータ化したかったHiro H.
 
シンデレラガールズ声優の増え方まとめ
シンデレラガールズ声優の増え方まとめシンデレラガールズ声優の増え方まとめ
シンデレラガールズ声優の増え方まとめHiro H.
 
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」Hiro H.
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Hiro H.
 
最近デレステ創作譜面作ってるので技術的な見地から話します
最近デレステ創作譜面作ってるので技術的な見地から話します最近デレステ創作譜面作ってるので技術的な見地から話します
最近デレステ創作譜面作ってるので技術的な見地から話しますHiro H.
 
デレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってますデレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってますHiro H.
 
名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗Hiro H.
 
MSYS2使いはじめました
MSYS2使いはじめましたMSYS2使いはじめました
MSYS2使いはじめましたHiro H.
 
関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へ関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へHiro H.
 
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみるHiro H.
 
rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!Hiro H.
 
コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法
コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法
コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法Hiro H.
 
Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)
Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)
Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)Hiro H.
 

More from Hiro H. (20)

pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!
 
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
 
シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)
シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)
シンデレラガール総選挙の「50位圏内の難しさ」はいかほどか?(23:20更新)
 
「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)
「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)
「MVが3人な曲の一覧」って取得できます?(デレステ・ミリシタ・エムステ)
 
配列の要素挿入・削除もランダムアクセスも両方高速にできる?
配列の要素挿入・削除もランダムアクセスも両方高速にできる?配列の要素挿入・削除もランダムアクセスも両方高速にできる?
配列の要素挿入・削除もランダムアクセスも両方高速にできる?
 
PCSじゃないよ、PCAだよ
PCSじゃないよ、PCAだよPCSじゃないよ、PCAだよ
PCSじゃないよ、PCAだよ
 
声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~
声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~
声優やぞ!~シンデレラガールズにおける配役の歴史のRDFデータ化~
 
スマホ音楽ゲームの動画から譜面をデータ化したかった
スマホ音楽ゲームの動画から譜面をデータ化したかったスマホ音楽ゲームの動画から譜面をデータ化したかった
スマホ音楽ゲームの動画から譜面をデータ化したかった
 
シンデレラガールズ声優の増え方まとめ
シンデレラガールズ声優の増え方まとめシンデレラガールズ声優の増え方まとめ
シンデレラガールズ声優の増え方まとめ
 
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
 
最近デレステ創作譜面作ってるので技術的な見地から話します
最近デレステ創作譜面作ってるので技術的な見地から話します最近デレステ創作譜面作ってるので技術的な見地から話します
最近デレステ創作譜面作ってるので技術的な見地から話します
 
デレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってますデレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってます
 
名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗
 
MSYS2使いはじめました
MSYS2使いはじめましたMSYS2使いはじめました
MSYS2使いはじめました
 
関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へ関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へ
 
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
 
rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!
 
コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法
コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法
コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を解いてもらった方法
 
Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)
Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)
Boost.GraphでJR全線乗り尽くしプランを立てる - プログラミング生放送+CLR/H+Sapporo.cpp 勉強会@札幌 (2014.7.12)
 

C++のライブラリを簡単に眺めてみよう