SlideShare a Scribd company logo
1 of 101
Download to read offline
Ohotech 特盛 #10(2014.8.30) 
C++のSTLの 
コンテナ型を概観する 
H.Hiro @ Sapporo.cpp 
Twitter: @h_hiro_ 
http://hhiro.net/about/
自己紹介
H.Hiro 
●情報系の研究員 
やってます 
(2014年3月まで大学院生でした) 
●趣味でもプログラム書いてます 
●C++とかRubyとか他にも何でも
IT系勉強会で北見に来るのは 
2年ぶりです
最近の勉強会発表 
"コンピュータに「最長しりとり」「最短距離でのJR線全線乗り尽くし」を 
解いてもらった方法" @ FuraIT #3 (2014.8.23) 
http://www.slideshare.net/maraigue/graph-andlgpk
よろしく 
お願いします
はじめに
今回知って 
もらえればと 
思っていること
1. 
汎用的なデータ構造は 
C++だと"STL"として 
提供されるということ
2. 
どんなデータ構造を 
どんな場合に使えば 
よいかの感覚
3. 
"STL怖い"なんて 
言わなくてよいように 
なること
では始めます
おしながき
1)STLとは 
2)「データ構造」を考える理由 
3)STLのコンテナ型と 
それぞれの特徴 
4)STLを使うと便利なこと
STLとは
STLとは 
●Standard Template Libraryの略 
●汎用的、かつ型に依存しない 
データ構造や処理(アルゴリズム) 
を提供する
STLとは 
●Standard Template Libraryの略 
●汎用的、かつ型に依存しない 
データ構造や処理(アルゴリズム) 
を提供する
Template(テンプレート)とは 
●コンパイル時に有効になる 
クラスや関数に対するパラメータ 
●型によらない機能を提供するのが 
代表的な用法 
template <class TYPE> 
TYPE max(const TYPE & v1, const TYPE & v2){ 
return(v1 > v2 ? v1 : v2); 
} 
max(1.0, 3.0); // TYPEはfloatとみなされる 
max(1, 5); // TYPEはintとみなされる 
max<int>(1, 5); // 型を明示してもよい
STLの例 
#include <iostream> 
#include <vector> 
#include <algorithm> 
int main(void){ 
// 「intのvector」「doubleのvector」を作る 
// (あとで説明しますが、可変長配列です) 
std::vector<int> hoge = {3, 1, 4}; 
std::vector<double> piyo = {5.6, 1.2, 3.4}; 
// int/doubleの型によらず、同じ記法でソート(並べ替え)できる 
std::sort(hoge.begin(), hoge.end()); 
std::sort(piyo.begin(), piyo.end()); 
}
●汎用的に利用されるデータ構造や 
アルゴリズムを自前で作るのは 
ミス・バグの原因にもなる 
●STLが提供する機能の特性を 
理解したうえで、先人の力を借りよう 
●複数人で開発するときとかは特に。 
(標準ライブラリなので何かと便利!)
「データ構造」を 
考える理由
そもそも 
データ構造って 
何なのか
たとえば
RPGを例に考えてみると 
●パーティーの編成 
(例えば「4人まで」とする) 
●現在プレイヤーが持っている 
アイテムの一覧 
●マップ上の地形
パーティーの編成 
(例えば「4人まで」とする) 
→配列があればよい 
 サイズも固定でよい 
職業:勇者、HP:120、… 
職業:魔法使い、HP:95、… 
職業:格闘家、HP:135、… 
職業:僧侶、HP:110、…
現在プレイヤーが持っている 
アイテムの一覧 
→「どのアイテムを何個持って 
いるか」という表 
では表をどう作る? 
構造体の配列にする 
ほかの方法もある 
アイテム名個数 
薬草10 
魔法石2 
お守り3 
: :
マップ上の地形 
→表があればよい 
(マス目状の配置であれば) 
→線の一覧を格納する 
(マップが自由に描ける場合) 
3Dだともっと面倒
いろんな 
データ構造を 
考えないと 
ならない
しかも 
面倒なことに
適切なデータ構造を 
選ばないと 
処理が遅くなったり 
メモリを過剰に 
消費したりする
データ構造 
自体はSTLが 
面倒見て 
くれるけど
どのデータ構造 
で作るかは 
プログラマーが 
判断する
この先では 
STLの型について 
そういった話を 
していきます
STLの 
コンテナ型一覧 
(Part 1)
コンテナ型 
=(複数の)要素を 
保持する型
コンテナ型(1): vector 
可変長配列 
(あとで要素数を変えられる) 
vector<int> hoge = {3, 1, 4}; 
hoge.push_back(7); 
hoge.pop_front(); 
3 1 4 
3 1 4 7 
1 4 7
std::vector<int> hoge; 
// ↑int型の要素を 
// 格納するvector 
std::vector<std::string> piyo; 
// ↑string型(文字列型)の要素を 
// 格納するvector
補足 
vector<int> hoge = {3, 1, 4}; 
↑こういう書き方は、 
 配列ではもともとできましたが、 
 vector(やその他のクラス)で使うには 
 比較的新しいコンパイラが必要です。 
(現時点での最新のC++規格 
 「C++11」で新規に規格化)
コードはこんな感じ 
#include <iostream> 
#include <vector> // vectorを使うために 
int main(void){ 
std::vector<int> hoge(3); // 要素数3のvector 
// ここでは数値を使ってループしている 
// 「イテレータ」を使う方法もある(あとで説明します) 
for(size_t i = 0; i < hoge.size(); ++i){ 
hoge[i] = i * i; 
} 
// (以下略) 
}
vectorの特性(1) 
●k番目の要素を取得(ランダムアクセス) 
→即座に完了。 
 vectorはメモリ上に等間隔で要素を 
 並べて保持しているので(配列と同じ) 
 メモリ上のその場所にアクセスするだけ。 
3 1 4 7
vectorの特性(2) 
●要素を1つ挿入する 
→大きく時間がかかる場合がある。 
→もともと配列にあった要素をずらさないと 
 ならない。 
3 1 4 
2番目に「5」を追加 
3 5 1 4
vectorの特性(2) 
●要素を1つ挿入する 
→大きく時間がかかる場合がある。 
→もともと配列にあった要素をずらさないと 
 ならない。 
→場合によっては、要素のメモリ上の 
 置き場所をまるごとずらす必要がある。 
3 1 4 1 5 9 2 
↑二つのvectorが隣接したメモリ領域に格納されている。 
ここで、「3 1 4」のほうを長くしようとすると?
vectorの特性(3) 
●要素を1つ削除する 
→挿入と同じ理屈で、 
 大きく時間がかかる場合がある。 
3 5 1 4 
「5」を削除→「1」「4」はずらす 
3 1 4
vectorの特性(4) 
●メモリの消費量 
→少ない。 
 変数を格納する領域+ポインタ変数2つ 
 (領域の起点&領域のサイズ) 
3 1 4 7
ここまでのまとめ: 
vectorの利点 
●ランダムアクセスは速い 
●メモリもそこまで食わない 
vectorの欠点 
●挿入・削除は遅い 
(最悪でvectorのサイズに比例)
vectorの欠点 
●挿入・削除は遅い 
(最悪でvectorのサイズに比例) 
↑これに対処してみる。
コンテナ型(2): list 
双方向連結リスト 
要素の値 
3 
次の要素 
前の要素 
要素の値 
1 
次の要素 
前の要素 
要素の値 
4 
次の要素 
前の要素 
C++11ではforward_list 
(一方向連結リスト)もある
listの特性(1) 
●要素を1つ挿入する・削除する 
→ポインタを付け替えるだけでよいので 
 高速(ただし、挿入/削除する要素の 
 ありかが事前にわかっている場合) 
3 1 4 
5
listの特性(1) 
●要素を1つ挿入する・削除する 
→ポインタを付け替えるだけでよいので 
 高速(ただし、挿入/削除する要素の 
 ありかが事前にわかっている場合) 
3 1 4 
5
listの特性(2) 
●k番目の要素を取得(ランダムアクセス) 
→k回ポインタを辿る必要がある。 
 vectorに比べると非常に遅い 
要素の値 
3 
次の要素 
前の要素 
要素の値 
1 
次の要素 
前の要素 
要素の値 
4 
次の要素 
前の要素
listの特性(3) 
●メモリの消費量 
→vectorに比べると多い。 
 格納する1要素につき、ポインタ変数 
 2つぶんの領域が追加で必要になる。 
 (forward_listの場合は1つ) 
要素の値 
3 
次の要素 
前の要素 
要素の値 
1 
次の要素 
前の要素 
要素の値 
4 
次の要素 
前の要素
ここまでをまとめると 
●vector:「k番目の要素を取得」という操作 
(ランダムアクセス)が多いときに有利 
●list:要素の挿入・削除が多いときに有利
さて
もう一つ 
別の需要を 
考えてみます
検索
検索問題 
std::vector<int> hoge = {3, 1, 4}; 
hogeの中に「2」があるか調べるには?
検索問題 
std::vector<int> hoge = {3, 1, 4}; 
hogeの中に「2」があるか調べるには? 
→先頭から順に見る。 
 hogeの要素数が増えると当然遅くなる。 
→std::list<int>だったとしても同じ。
vectorだろうが 
listだろうが 
検索は 
時間がかかる
でも 
安心してください
検索時間の削減を 
優先した 
コンテナ型もある
コンテナ型(3): set 
●集合(要素を重複なく格納) 
●「ある要素が存在するか否か」を 
比較的高速に判定可能 
std::set<int> hoge = {3, 1, 4}; 
std::set<int>::iterator it = hoge.find(6);
コンテナ型(3): set 
●multiset(要素を重複ありで格納) 
もある 
●C++11では、unordered_set・ 
unordered_multiset 
(内部実装が異なる)もある 
set:二分木 
unordered_set:ハッシュテーブル
setの特性(1) 
●ある要素が存在するか調べる 
→setなら logn に比例する程度の時間。 
 (n: すでに入っている要素数) 
→unordered_setなら、nにほぼ依存しない 
 時間で済む上、setよりも省メモリ。 
 ただしC++11対応環境が必要。
setの特性(2) 
●検索が高速になるように、 
要素は内部で勝手に並び替えられている。 
●なので、順番を維持したいときは 
別途対策を考える必要がある。 
●setは要素の大小順、unordered_setは 
ハッシュ関数(詳細略)の値の順で並ぶ
ここまでをまとめると 
型 
計算時間 (n:格納された要素数) 
任意の 
順序での 
要素格納 
ランダム 
アクセス 
要素の 
挿入・削除 
要素の検索 
vector 速い 
O(1)時間 
遅い 
O(n)時間 
遅い 
O(n)時間 
可能 
list 
forward_list 
遅い 
O(n)時間 
速い 
O(1)時間 
遅い 
O(n)時間 
可能 
set 
unordered_set 
など 
できない 
(そもそも、 
自由に並べ 
られない) 
速い 
O(1)~O(logn) 
時間 
速い 
O(1)~O(logn) 
時間 
不能
ここまで説明したもの 
vector, list, forward_list#, 
set, multiset, unordered_set#, 
unordered_multiset# 
#:C++11で新規導入
まだいろいろ 
あるので 
手短に説明します
コンテナ型(4): deque 
●固定サイズの配列を可変個繋いでいる 
●先頭か末尾であれば挿入・削除が高速 
(それ以外はvectorと同じで低速) 
●listよりメモリを使わないので、挿入・削除が 
先頭か末尾中心であるときに有効 
●ランダムアクセスも可能 
3 1 4 1 5 9 2 6 
5 3 5 8 9 7 9 3 
2 3 8 4 6 2 6 4 
3 3 8
コンテナ型(5): 
priority_queue 
●入れた要素を大きさの順にしか取り出せない 
●その代わり、取り出しは高速で 
要素の挿入も比較的高速
コンテナ型(6): array 
普通の固定長配列(a[10]など)に便利な 
機能を追加したもの。C++11で新規導入 
コンテナ型(7): bitset 
固定長のビット列。いわゆる「フラグ」 
可変長の場合はvector<bool>を使うなどの 
対応が必要
コンテナ型(8): stack 
「スタック」。割愛します 
コンテナ型(9): queue 
「キュー」。割愛します
ここまで説明したもの 
vector, list, forward_list#, 
set, multiset, unordered_set#, 
unordered_multiset#, 
deque, priority_queue, 
array#, bitset, stack, queue 
#:C++11で新規導入
現時点での 
まとめ
ここまで出てきた 
コンテナ型の 
使い分け
状況おすすめ 
要素数が少ない 
vector 
ランダムアクセスする機会が多い 
計算時間よりもメモリ消費を抑えたいvector/deque 
要素の挿入・削除を 
する機会が多い 
先頭・末尾が中心deque 
途中にもlist/forward_list 
要素の検索をする 
機会が多い 
重複した要素の 
格納は不要 
set/unordered_set 
重複した要素の 
格納も必要 
multiset/ 
unordered_multiset 
※priority_queue, array, bitset, 
stack, queueは割愛
ここで 
一旦休憩 
質問ありましたらどうぞ
STLの 
コンテナ型一覧 
(Part 2)
Part 2は 
そんなに長く 
ないです
Part 2で 
やること
連想配列
連想配列 
ふつうの配列と違って 
好きな型の値で要素を参照できる 
Rubyだと「ハッシュ」とか、Pythonだと「辞書」とか呼ばれる 
std::map<std::string, int> 
attendee = {{"Kitami", 8}, {"Sapporo", 5}}; 
std::cout << attendee["Sapporo"] << std::endl; 
std::cout << attendee["Kitami"] << std::endl; 
++attendee["Kitami"]; 
std::cout << attendee["Sapporo"] << std::endl; 
std::cout << attendee["Kitami"] << std::endl;
std::map<int, double> hoge; 
// ↑int型の値を指定して 
// double型の値を設定/取得する 
std::map<std::string, int> piyo; 
// ↑string型(文字列型)の値を 
// 指定して 
// int型の値を設定/取得する
さっきまでとの違い 
当然だが、型を2つ指定する必要 
std::vector<int> hoge; 
// ↑指定する型はintだけ 
std::map<std::string, int> piyo; 
// ↑指定する型はstringとint
STLの連想配列型 
●map 
●unordered_map 
●multimap 
●unordered_multimap
使い分け 
●"unordered"の有無 
→実装の違い(setと同様) 
C++11前提でよいならunordered優先で 
●"multi"の有無 
→重複を許すか否か(setと同様)
ここまで説明したもの 
vector, list, forward_list#, 
set, multiset, unordered_set#, 
unordered_multiset#, 
deque, priority_queue, 
array#, bitset, stack, queue, 
map, multimap, unordered_map#, 
unordered_multimap# 
#:C++11で新規導入
STLの 
コンテナ型は 
これで全部 
(おそらく)
では、もっと 
活用してみよう
STLを使うと 
便利なこと
再掲 
// 「intのvector」「doubleのvector」を作る 
std::vector<int> hoge = {3, 1, 4}; 
std::vector<double> piyo = {5.6, 1.2, 3.4}; 
// intでもdoubleでも同じ記法でソート(並べ替え)できる 
std::sort(hoge.begin(), hoge.end()); 
std::sort(piyo.begin(), piyo.end()); 
型が違っても同じコードが使える
それだけじゃない 
// 「intのvector」「intのdeque」を作る 
std::vector<int> hoge = {3, 1, 4}; 
std::deque<int> piyo = {3, 1, 4}; 
// vectorでもlistでも同じ記法でソート(並べ替え)できる 
std::sort(hoge.begin(), hoge.end()); 
std::sort(piyo.begin(), piyo.end()); 
コンテナ型の方が違っていてもよい!
STLには、このような 
コンテナ型を問わない 
APIが大量に用意されている 
↓ 
コードの使い回しが容易 
型の切り替えが容易
イテレータ 
●「要素の列挙」を抽象化したもの 
●例えば「次の要素を得る」ことは 
vectorなら「ポインタをインクリメント」 
listなら「別途格納された次のポインタへ」 
●このおかげで様々な汎用性が得られている 
3 1 4 7
イテレータ 
●「要素の列挙」を抽象化したもの 
●例えば「次の要素を得る」ことは 
vectorなら「ポインタをインクリメント」 
listなら「別途格納された次のポインタへ」 
●このおかげで様々な汎用性が得られている 
要素の値 
3 
次の要素 
前の要素 
要素の値 
1 
次の要素 
前の要素 
要素の値 
4 
次の要素 
前の要素
イテレータ 
要素を単純に列挙するコード 
std::vector<int> hoge = {3, 1, 4}; 
for(std::vector<int>::iterator it = hoge.begin(); 
it != hoge.end(); ++it){ 
// イテレータはポインタ同様、*で値に変換できる 
std::cout << *it << std::endl; 
} 
※補足:hoge.end()は「最終要素の次」、 
 すなわち「ダミーの無効な要素」を表す
イテレータ 
要素を単純に列挙するコード 
std::list<int> hoge = {3, 1, 4}; 
for(std::list<int>::iterator it = hoge.begin(); 
it != hoge.end(); ++it){ 
// イテレータはポインタ同様、*で値に変換できる 
std::cout << *it << std::endl; 
} 
vectorでもlistでもコードはほぼ同じ!
アルゴリズム 
●#include <algorithm>すると 
いろんなアルゴリズムが利用可能に 
●検索、並び替え、コピーなど 
●パラメータとしてイテレータを渡すことが多い 
std::vector<int> hoge = {3, 1, 4}; 
// 偶数である最初の要素を返す 
std::vector<int>::iterator search_result 
= std::find_if(hoge.begin(), hoge.end(), 
[](int x){ return x % 2 == 0; });
おわりに
STLの便利なところ 
●基本的なデータ構造なら 
自分でわざわざ作らなくてよい 
●アルゴリズムも然り 
●標準ライブラリなので環境依存も小さい 
●新しめのコンパイラ(C++11対応)を 
使うとさらに便利に
STLの注意点 
●データ構造の選択はプログラマーの判断 
●今回割愛した話 
●イテレータを1つ進めるのが速い型、遅い型 
(※unorderedでないset、mapは遅い) 
●イテレータを外部に保存してよい型、 
保存に注意を要する型 
(※注意を要する型 
=vector、deque、unordered_*)
Ohotech 特盛 #10(2014.8.30) 
C++のSTLの 
コンテナ型を概観する 
終わり

More Related Content

What's hot

ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法Yoshifumi Kawai
 
中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexpr中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexprGenya Murakami
 
F#によるFunctional Programming入門
F#によるFunctional Programming入門F#によるFunctional Programming入門
F#によるFunctional Programming入門bleis tift
 
たのしい高階関数
たのしい高階関数たのしい高階関数
たのしい高階関数Shinichi Kozake
 
C++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISるC++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISるHideyuki Tanaka
 
高速な倍精度指数関数expの実装
高速な倍精度指数関数expの実装高速な倍精度指数関数expの実装
高速な倍精度指数関数expの実装MITSUNARI Shigeo
 
C++ ポインタ ブートキャンプ
C++ ポインタ ブートキャンプC++ ポインタ ブートキャンプ
C++ ポインタ ブートキャンプKohsuke Yuasa
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?Moriharu Ohzu
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14Ryo Suzuki
 
C言語ポインタ講座 (Lecture of Pointer in C)
C言語ポインタ講座 (Lecture of Pointer in C)C言語ポインタ講座 (Lecture of Pointer in C)
C言語ポインタ講座 (Lecture of Pointer in C)kakira9618
 
すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!Genya Murakami
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門Norishige Fukushima
 
NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門Shiqiao Du
 
Effective Modern C++ 勉強会#3 Item16
Effective Modern C++ 勉強会#3 Item16Effective Modern C++ 勉強会#3 Item16
Effective Modern C++ 勉強会#3 Item16Mitsuru Kariya
 
中3女子でもわかる constexpr
中3女子でもわかる constexpr中3女子でもわかる constexpr
中3女子でもわかる constexprGenya Murakami
 
C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会Akihiko Matuura
 
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭するCEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭するYoshifumi Kawai
 

What's hot (20)

ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
ZeroFormatterに見るC#で最速のシリアライザを作成する100億の方法
 
Boost.SIMD
Boost.SIMDBoost.SIMD
Boost.SIMD
 
中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexpr中3女子が狂える本当に気持ちのいい constexpr
中3女子が狂える本当に気持ちのいい constexpr
 
F#によるFunctional Programming入門
F#によるFunctional Programming入門F#によるFunctional Programming入門
F#によるFunctional Programming入門
 
たのしい高階関数
たのしい高階関数たのしい高階関数
たのしい高階関数
 
C++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISるC++コミュニティーの中心でC++をDISる
C++コミュニティーの中心でC++をDISる
 
高速な倍精度指数関数expの実装
高速な倍精度指数関数expの実装高速な倍精度指数関数expの実装
高速な倍精度指数関数expの実装
 
プログラムを高速化する話
プログラムを高速化する話プログラムを高速化する話
プログラムを高速化する話
 
C++ ポインタ ブートキャンプ
C++ ポインタ ブートキャンプC++ ポインタ ブートキャンプ
C++ ポインタ ブートキャンプ
 
オブジェクト指向できていますか?
オブジェクト指向できていますか?オブジェクト指向できていますか?
オブジェクト指向できていますか?
 
ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14ゲーム開発者のための C++11/C++14
ゲーム開発者のための C++11/C++14
 
C言語ポインタ講座 (Lecture of Pointer in C)
C言語ポインタ講座 (Lecture of Pointer in C)C言語ポインタ講座 (Lecture of Pointer in C)
C言語ポインタ講座 (Lecture of Pointer in C)
 
すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!すごい constexpr たのしくレイトレ!
すごい constexpr たのしくレイトレ!
 
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
 
LLVM最適化のこつ
LLVM最適化のこつLLVM最適化のこつ
LLVM最適化のこつ
 
NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門NumPyが物足りない人へのCython入門
NumPyが物足りない人へのCython入門
 
Effective Modern C++ 勉強会#3 Item16
Effective Modern C++ 勉強会#3 Item16Effective Modern C++ 勉強会#3 Item16
Effective Modern C++ 勉強会#3 Item16
 
中3女子でもわかる constexpr
中3女子でもわかる constexpr中3女子でもわかる constexpr
中3女子でもわかる constexpr
 
C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会C++ Template Meta Programming の紹介@社内勉強会
C++ Template Meta Programming の紹介@社内勉強会
 
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭するCEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
CEDEC 2018 最速のC#の書き方 - C#大統一理論へ向けて性能的課題を払拭する
 

Viewers also liked

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.
 
関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へ関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へHiro H.
 
Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方wada, kazumi
 
今Cinderが熱い! #cinder
今Cinderが熱い! #cinder今Cinderが熱い! #cinder
今Cinderが熱い! #cinderKatsuyaENDOH
 
The Introduction to Vector Graphics
The Introduction to Vector GraphicsThe Introduction to Vector Graphics
The Introduction to Vector Graphicsemaame
 
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築についてTomoaki Shimizu
 
cocos2d-x公開講座 in 鹿児島
cocos2d-x公開講座 in 鹿児島cocos2d-x公開講座 in 鹿児島
cocos2d-x公開講座 in 鹿児島Tomoaki Shimizu
 
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築についてTomoaki Shimizu
 
cocos2d-xのサーバ連携について
cocos2d-xのサーバ連携についてcocos2d-xのサーバ連携について
cocos2d-xのサーバ連携についてTomoaki Shimizu
 
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築についてTomoaki Shimizu
 
Cocos2d-x公開講座 in 鹿児島
Cocos2d-x公開講座 in 鹿児島Cocos2d-x公開講座 in 鹿児島
Cocos2d-x公開講座 in 鹿児島Tomoaki Shimizu
 
Cocos2d xでの開発の準備
Cocos2d xでの開発の準備Cocos2d xでの開発の準備
Cocos2d xでの開発の準備Tomoaki Shimizu
 
cocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみようcocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみようTomoaki Shimizu
 
cocos2d-xの開発に欠かせないCocosBuilderについて
cocos2d-xの開発に欠かせないCocosBuilderについてcocos2d-xの開発に欠かせないCocosBuilderについて
cocos2d-xの開発に欠かせないCocosBuilderについてTomoaki Shimizu
 
Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介Tomoaki Shimizu
 
Cocos2d-x実践講座 in 鹿児島
Cocos2d-x実践講座 in 鹿児島Cocos2d-x実践講座 in 鹿児島
Cocos2d-x実践講座 in 鹿児島Tomoaki Shimizu
 
Cocos2d xをさらにさわってみよう!
Cocos2d xをさらにさわってみよう!Cocos2d xをさらにさわってみよう!
Cocos2d xをさらにさわってみよう!Tomoaki Shimizu
 

Viewers also liked (20)

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)
 
関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へ関数の最小値を求めることから機械学習へ
関数の最小値を求めることから機械学習へ
 
Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方Rでの対称行列の固有値・固有ベクトルの最適な求め方
Rでの対称行列の固有値・固有ベクトルの最適な求め方
 
Math1 Vector
Math1 VectorMath1 Vector
Math1 Vector
 
今Cinderが熱い! #cinder
今Cinderが熱い! #cinder今Cinderが熱い! #cinder
今Cinderが熱い! #cinder
 
The Introduction to Vector Graphics
The Introduction to Vector GraphicsThe Introduction to Vector Graphics
The Introduction to Vector Graphics
 
OpenGL 3DCG
OpenGL 3DCGOpenGL 3DCG
OpenGL 3DCG
 
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、iOSアプリの開発環境構築について
 
cocos2d-x公開講座 in 鹿児島
cocos2d-x公開講座 in 鹿児島cocos2d-x公開講座 in 鹿児島
cocos2d-x公開講座 in 鹿児島
 
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築についてMacでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
Macでcocos2d-x 2.1.3を使用した、Androidアプリの開発環境構築について
 
cocos2d-xのサーバ連携について
cocos2d-xのサーバ連携についてcocos2d-xのサーバ連携について
cocos2d-xのサーバ連携について
 
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
20130912 macでcocos2d x 3.0alphaを使用した、クロスプラットフォーム開発環境構築について
 
Cocos2d-x公開講座 in 鹿児島
Cocos2d-x公開講座 in 鹿児島Cocos2d-x公開講座 in 鹿児島
Cocos2d-x公開講座 in 鹿児島
 
Cocos2d xでの開発の準備
Cocos2d xでの開発の準備Cocos2d xでの開発の準備
Cocos2d xでの開発の準備
 
cocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみようcocos2d-xとCocosBuilderでゲームを作ってみよう
cocos2d-xとCocosBuilderでゲームを作ってみよう
 
cocos2d-xの開発に欠かせないCocosBuilderについて
cocos2d-xの開発に欠かせないCocosBuilderについてcocos2d-xの開発に欠かせないCocosBuilderについて
cocos2d-xの開発に欠かせないCocosBuilderについて
 
Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介Cocos2d-xのかんたんな紹介
Cocos2d-xのかんたんな紹介
 
Cocos2d xのススメ
Cocos2d xのススメCocos2d xのススメ
Cocos2d xのススメ
 
Cocos2d-x実践講座 in 鹿児島
Cocos2d-x実践講座 in 鹿児島Cocos2d-x実践講座 in 鹿児島
Cocos2d-x実践講座 in 鹿児島
 
Cocos2d xをさらにさわってみよう!
Cocos2d xをさらにさわってみよう!Cocos2d xをさらにさわってみよう!
Cocos2d xをさらにさわってみよう!
 

Similar to C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)

Boost.Flyweight
Boost.FlyweightBoost.Flyweight
Boost.Flyweightgintenlabo
 
競技プログラミングのためのC++入門
競技プログラミングのためのC++入門競技プログラミングのためのC++入門
競技プログラミングのためのC++入門natrium11321
 
わんくま同盟大阪勉強会#61
わんくま同盟大阪勉強会#61わんくま同盟大阪勉強会#61
わんくま同盟大阪勉強会#61TATSUYA HAYAMIZU
 
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案yushin_hirano
 
Lisp Tutorial for Pythonista : Day 3
Lisp Tutorial for Pythonista : Day 3Lisp Tutorial for Pythonista : Day 3
Lisp Tutorial for Pythonista : Day 3Ransui Iso
 
C++0x 言語の未来を語る
C++0x 言語の未来を語るC++0x 言語の未来を語る
C++0x 言語の未来を語るAkira Takahashi
 
C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)Akira Takahashi
 
Hello Dark-Side C# (Part. 1)
Hello Dark-Side C# (Part. 1)Hello Dark-Side C# (Part. 1)
Hello Dark-Side C# (Part. 1)Yuto Takei
 
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.kiki utagawa
 
Gura プログラミング言語の紹介
Gura プログラミング言語の紹介Gura プログラミング言語の紹介
Gura プログラミング言語の紹介Yutaka Saito
 
Pythonと型チェッカー
Pythonと型チェッカーPythonと型チェッカー
Pythonと型チェッカーTetsuya Morimoto
 
C++0x in programming competition
C++0x in programming competitionC++0x in programming competition
C++0x in programming competitionyak1ex
 
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章Tomonobu_Hirano
 
Python standard 2022 Spring
Python standard 2022 SpringPython standard 2022 Spring
Python standard 2022 Springanyakichi
 

Similar to C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30) (20)

Boost.Flyweight
Boost.FlyweightBoost.Flyweight
Boost.Flyweight
 
競技プログラミングのためのC++入門
競技プログラミングのためのC++入門競技プログラミングのためのC++入門
競技プログラミングのためのC++入門
 
わんくま同盟大阪勉強会#61
わんくま同盟大阪勉強会#61わんくま同盟大阪勉強会#61
わんくま同盟大阪勉強会#61
 
Pfi Seminar 2010 1 7
Pfi Seminar 2010 1 7Pfi Seminar 2010 1 7
Pfi Seminar 2010 1 7
 
What is template
What is templateWhat is template
What is template
 
Boost tour 1_44_0
Boost tour 1_44_0Boost tour 1_44_0
Boost tour 1_44_0
 
Boost Fusion Library
Boost Fusion LibraryBoost Fusion Library
Boost Fusion Library
 
第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案第一回Data mining勉強会 -第二章 - 原案
第一回Data mining勉強会 -第二章 - 原案
 
Lisp Tutorial for Pythonista : Day 3
Lisp Tutorial for Pythonista : Day 3Lisp Tutorial for Pythonista : Day 3
Lisp Tutorial for Pythonista : Day 3
 
Teclab3
Teclab3Teclab3
Teclab3
 
Cpu cache arch
Cpu cache archCpu cache arch
Cpu cache arch
 
C++0x 言語の未来を語る
C++0x 言語の未来を語るC++0x 言語の未来を語る
C++0x 言語の未来を語る
 
C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)C++0xの概要(デブサミ2010)
C++0xの概要(デブサミ2010)
 
Hello Dark-Side C# (Part. 1)
Hello Dark-Side C# (Part. 1)Hello Dark-Side C# (Part. 1)
Hello Dark-Side C# (Part. 1)
 
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
Pythonの処理系はどのように実装され,どのように動いているのか? 我々はその実態を調査すべくアマゾンへと飛んだ.
 
Gura プログラミング言語の紹介
Gura プログラミング言語の紹介Gura プログラミング言語の紹介
Gura プログラミング言語の紹介
 
Pythonと型チェッカー
Pythonと型チェッカーPythonと型チェッカー
Pythonと型チェッカー
 
C++0x in programming competition
C++0x in programming competitionC++0x in programming competition
C++0x in programming competition
 
第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章第一回Data mining勉強会 -第二章
第一回Data mining勉強会 -第二章
 
Python standard 2022 Spring
Python standard 2022 SpringPython standard 2022 Spring
Python standard 2022 Spring
 

More from Hiro H.

pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!Hiro H.
 
式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~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.
 
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」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.
 
C++のライブラリを簡単に眺めてみよう
C++のライブラリを簡単に眺めてみようC++のライブラリを簡単に眺めてみよう
C++のライブラリを簡単に眺めてみようHiro H.
 
デレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってますデレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってますHiro H.
 
名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗Hiro H.
 
MSYS2使いはじめました
MSYS2使いはじめましたMSYS2使いはじめました
MSYS2使いはじめましたHiro H.
 
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみるHiro H.
 
rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!Hiro H.
 

More from Hiro H. (20)

pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!pandas便利だけどデフォルトパラメータでファイルを読み込むな!
pandas便利だけどデフォルトパラメータでファイルを読み込むな!
 
式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~式を書くだけで最適化計算してほしい!~CVXPY編~
式を書くだけで最適化計算してほしい!~CVXPY編~
 
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
旅行「#重複乗車禁止で名鉄完乗」とその数学的な解説
 
シンデレラガール総選挙の「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データ化~
 
スマホ音楽ゲームの動画から譜面をデータ化したかった
スマホ音楽ゲームの動画から譜面をデータ化したかったスマホ音楽ゲームの動画から譜面をデータ化したかった
スマホ音楽ゲームの動画から譜面をデータ化したかった
 
シンデレラガールズ声優の増え方まとめ
シンデレラガールズ声優の増え方まとめシンデレラガールズ声優の増え方まとめ
シンデレラガールズ声優の増え方まとめ
 
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
札幌C++勉強会 #13「最近、仕事でC++11以降の新規格が役に立ったシーン紹介」
 
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
わんくま同盟 名古屋勉強会 #43 ライトニングトーク「Firefoxがver.57~(Quantum)にアップグレードされて困ったこと・やったこと」
 
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
 
最近デレステ創作譜面作ってるので技術的な見地から話します
最近デレステ創作譜面作ってるので技術的な見地から話します最近デレステ創作譜面作ってるので技術的な見地から話します
最近デレステ創作譜面作ってるので技術的な見地から話します
 
C++のライブラリを簡単に眺めてみよう
C++のライブラリを簡単に眺めてみようC++のライブラリを簡単に眺めてみよう
C++のライブラリを簡単に眺めてみよう
 
デレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってますデレステの劇場で登場したアイドルの回数の統計取ってます
デレステの劇場で登場したアイドルの回数の統計取ってます
 
名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗名古屋市営地下鉄最小距離完乗
名古屋市営地下鉄最小距離完乗
 
MSYS2使いはじめました
MSYS2使いはじめましたMSYS2使いはじめました
MSYS2使いはじめました
 
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
角錐や円錐が、角柱や円柱の体積の3分の1であることを積分・極限抜きで証明してみる
 
rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!rsyncで差分バックアップしようぜ!
rsyncで差分バックアップしようぜ!
 

Recently uploaded

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Recently uploaded (10)

SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

C++のSTLのコンテナ型を概観する @ Ohotech 特盛 #10(2014.8.30)