Cppmix 01

Akira Takahashi
Akira TakahashiProgrammer en Preferred Networks, Inc.
#1
この勉強会の概要・目的
• C++ MIXは、C++周辺の勉強会です
• C++に関する知見を共有する場なのはもちろんですが、
RustやGoといった他の言語・技術をC++プログラマが学ぶ場
にもしていきたいです
• 発表のみの場にならないよう、今後カジュアルな相談・議論を
する場にもしていきたいです
運営
• 高橋 晶 (me) cpp_akira@Twitter, faithandbrave@GitHub
• 著書『C++テンプレートテクニック』、『C++ポケットリファレン
ス』、『プログラミングの魔導書』シリーズなど
• C++日本語リファレンスサイトcpprefjp
• 岡田 真太郎 okdshin@Twitter
• 『Effective Modern C++』邦訳版の監修
• お手伝いメンバー
• おさかなさん (sakanazensen@Twitter)
• Flast (Flast_RO@Twitter)
会場注意
• Wi-Fiあります (ホワイトボード参照)
• ビルの1F出口は21時で閉まります。
B2Fから大手町駅、JR東京駅に行けます。
• 発表画面を、YouTubeでライブ配信します。映りたくない方は
カメラを避けてください
最近のC++
• 長い期間、C++の開発はC++98/C++03でやってきました
• 2011年にC++11が策定され、その後C++14、C++17と、
3年ごとに言語規格がアップデートされるようになりました
• 私たちは、非推奨になる機能、より開発しやすくなる機能を、
短いスパンで学んでいくことが必要となります
• また、C++のエコシステムも標準外でいろいろできています。
ビルドシステム (CMake)、パッケージマネージャ (Conan)、
テスト (Catch) などなど。
C++11
• C++03からのメジャーアップデートで、開発しやすくなる
言語機能と標準ライブラリが、いろいろ入りました
• ラムダ式、右辺値参照、範囲for文
• ハッシュ表、並行処理ライブラリ、スマートポインタ
• 「using std::cpp」というスペインのカンファレンスで調査し
た結果、C++03ユーザーが順調にC++11に移行していること
がわかっています
• (カンファレンス参加者層によるバイアスはあるでしょうが)
• https://usingstdcpp.org/2018/01/09/report-from-using-stdcpp-
2017/
C++14
• C++11に対するバグフィックス版として当初策定が進められて
いたのがC++14です
• 結局大きな機能がいろいろ入ったので、そういう立ち位置ではなくなり
ました
• C++11のより安定したバージョンということで、C++11を飛ば
して、C++03からC++14に移行するユーザーも多いようです
• 新機能
• 2進数リテラル、数値リテラルの桁区切り文字
• ラムダ式の初期化キャプチャ、ジェネリックラムダ
C++17
• C++14で入りきらなかった多くの機能が入りました
• インライン変数 (ヘッダファイルで変数定義できる)
• 構造化束縛 (多重代入)
• 式の評価順を規定
• if文/switch文での変数定義
• クラステンプレートのテンプレート引数推論
• ファイルシステムライブラリ、並列アルゴリズム、optional、variant、
any、数学特殊関数
次の標準C++20
• まだまだ策定が進められている最中ですが、多くの機能が予定
されています
• 宇宙船演算子 <=>
• コンセプト (制約テンプレート)
• 契約プログラミング
• 日付計算ライブラリ
• Rangeライブラリ
日本語情報の充実化
• cpprefjpでがんばってます
• ライブラリのリファレンスと、言語機能の差分
• ただこのサイトだけで、C++ユーザーのニーズ全ては
カバーしきれません
• 各バージョンごとの言語入門
• コンパイラやIDEの使い方
• 書き方のガイドライン
• デファクトスタンダードと言えるライブラリやツール
• 情報発信と共有をいっしょにしていきましょう!
#1
1 de 11

Recomendados

2011.6.4 TDD bootcamp 札幌2.0 自己紹介LT por
2011.6.4 TDD bootcamp 札幌2.0 自己紹介LT2011.6.4 TDD bootcamp 札幌2.0 自己紹介LT
2011.6.4 TDD bootcamp 札幌2.0 自己紹介LTHiro H.
1.8K vistas14 diapositivas
機械の体を手に入れるのよ、 鉄郎!!! por
機械の体を手に入れるのよ、鉄郎!!!機械の体を手に入れるのよ、鉄郎!!!
機械の体を手に入れるのよ、 鉄郎!!!Nagi Teramo
10.7K vistas26 diapositivas
組み込み向けC++のやり方を探る - mbedで楽しい組み込みプログラミング - por
組み込み向けC++のやり方を探る - mbedで楽しい組み込みプログラミング -組み込み向けC++のやり方を探る - mbedで楽しい組み込みプログラミング -
組み込み向けC++のやり方を探る - mbedで楽しい組み込みプログラミング -Kishi Shundo
6.8K vistas12 diapositivas
私の好きなPython構文 vol.2 #nds46 por
私の好きなPython構文 vol.2 #nds46私の好きなPython構文 vol.2 #nds46
私の好きなPython構文 vol.2 #nds46civicpg
1.8K vistas45 diapositivas
Rでを作る por
Rでを作るRでを作る
Rでを作るNagi Teramo
3.6K vistas23 diapositivas
LT: 今日帰ってすぐに始められるPython #nds45 por
LT: 今日帰ってすぐに始められるPython #nds45LT: 今日帰ってすぐに始められるPython #nds45
LT: 今日帰ってすぐに始められるPython #nds45civic Sasaki
2.2K vistas24 diapositivas

Más contenido relacionado

Similar a Cppmix 01

オープンセミナー香川2012 LT por
オープンセミナー香川2012 LTオープンセミナー香川2012 LT
オープンセミナー香川2012 LTKouta Imanaka
758 vistas19 diapositivas
Multi paradigm design por
Multi paradigm designMulti paradigm design
Multi paradigm designAkira Takahashi
3.2K vistas26 diapositivas
oFの話題が殆ど出ない oF jp Summer Workout por
oFの話題が殆ど出ない oF jp Summer WorkoutoFの話題が殆ど出ない oF jp Summer Workout
oFの話題が殆ど出ない oF jp Summer WorkoutTsuubito Ishii
1.2K vistas26 diapositivas
xUnitハンズオン第2回テキスト por
xUnitハンズオン第2回テキストxUnitハンズオン第2回テキスト
xUnitハンズオン第2回テキストmizuky fujitani
711 vistas39 diapositivas
Aizu.LT16 社会人1年目の失敗とContinuous Integration por
Aizu.LT16 社会人1年目の失敗とContinuous IntegrationAizu.LT16 社会人1年目の失敗とContinuous Integration
Aizu.LT16 社会人1年目の失敗とContinuous IntegrationTomoaki Tamura
1K vistas52 diapositivas
C#への招待 por
C#への招待C#への招待
C#への招待Yusuke Matsushita
3.4K vistas59 diapositivas

Similar a Cppmix 01(20)

オープンセミナー香川2012 LT por Kouta Imanaka
オープンセミナー香川2012 LTオープンセミナー香川2012 LT
オープンセミナー香川2012 LT
Kouta Imanaka758 vistas
oFの話題が殆ど出ない oF jp Summer Workout por Tsuubito Ishii
oFの話題が殆ど出ない oF jp Summer WorkoutoFの話題が殆ど出ない oF jp Summer Workout
oFの話題が殆ど出ない oF jp Summer Workout
Tsuubito Ishii1.2K vistas
xUnitハンズオン第2回テキスト por mizuky fujitani
xUnitハンズオン第2回テキストxUnitハンズオン第2回テキスト
xUnitハンズオン第2回テキスト
mizuky fujitani711 vistas
Aizu.LT16 社会人1年目の失敗とContinuous Integration por Tomoaki Tamura
Aizu.LT16 社会人1年目の失敗とContinuous IntegrationAizu.LT16 社会人1年目の失敗とContinuous Integration
Aizu.LT16 社会人1年目の失敗とContinuous Integration
Tomoaki Tamura1K vistas
「CodeYourRuby」で オープンなコードレビューを体験しよう por 中條 剛
「CodeYourRuby」で オープンなコードレビューを体験しよう「CodeYourRuby」で オープンなコードレビューを体験しよう
「CodeYourRuby」で オープンなコードレビューを体験しよう
中條 剛630 vistas
xUnitハンズオン第3回テキスト por mizuky fujitani
xUnitハンズオン第3回テキストxUnitハンズオン第3回テキスト
xUnitハンズオン第3回テキスト
mizuky fujitani704 vistas
趣味プログラマの先輩からのアドバイス por Hiroaki Murayama
趣味プログラマの先輩からのアドバイス趣味プログラマの先輩からのアドバイス
趣味プログラマの先輩からのアドバイス
Hiroaki Murayama3K vistas
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介 por Shoken Fujisaki
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
Shoken Fujisaki2.7K vistas
C#言語機能の作り方 por 信之 岩永
C#言語機能の作り方C#言語機能の作り方
C#言語機能の作り方
信之 岩永3.4K vistas
TUT-LTで話したアレ(k3_kaimu) por Kazuki Komatsu
TUT-LTで話したアレ(k3_kaimu)TUT-LTで話したアレ(k3_kaimu)
TUT-LTで話したアレ(k3_kaimu)
Kazuki Komatsu374 vistas

Más de Akira Takahashi

Cpp20 overview language features por
Cpp20 overview language featuresCpp20 overview language features
Cpp20 overview language featuresAkira Takahashi
890 vistas28 diapositivas
Cppmix 02 por
Cppmix 02Cppmix 02
Cppmix 02Akira Takahashi
675 vistas7 diapositivas
Modern C++ Learning por
Modern C++ LearningModern C++ Learning
Modern C++ LearningAkira Takahashi
18.5K vistas12 diapositivas
cpprefjp documentation por
cpprefjp documentationcpprefjp documentation
cpprefjp documentationAkira Takahashi
1.3K vistas23 diapositivas
C++1z draft por
C++1z draftC++1z draft
C++1z draftAkira Takahashi
6.6K vistas67 diapositivas
Boost tour 1_61_0 merge por
Boost tour 1_61_0 mergeBoost tour 1_61_0 merge
Boost tour 1_61_0 mergeAkira Takahashi
2K vistas126 diapositivas

Más de Akira Takahashi(20)

Cpp20 overview language features por Akira Takahashi
Cpp20 overview language featuresCpp20 overview language features
Cpp20 overview language features
Akira Takahashi890 vistas
C++14 solve explicit_default_constructor por Akira Takahashi
C++14 solve explicit_default_constructorC++14 solve explicit_default_constructor
C++14 solve explicit_default_constructor
Akira Takahashi7.3K vistas

Último

SSH応用編_20231129.pdf por
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdficebreaker4
335 vistas13 diapositivas
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... por
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...NTT DATA Technology & Innovation
120 vistas42 diapositivas
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向 por
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向
Keycloakの全体像: 基本概念、ユースケース、そして最新の開発動向Hitachi, Ltd. OSS Solution Center.
60 vistas26 diapositivas
SNMPセキュリティ超入門 por
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門mkoda
355 vistas15 diapositivas
光コラボは契約してはいけない por
光コラボは契約してはいけない光コラボは契約してはいけない
光コラボは契約してはいけないTakuya Matsunaga
16 vistas17 diapositivas

Último(11)

SSH応用編_20231129.pdf por icebreaker4
SSH応用編_20231129.pdfSSH応用編_20231129.pdf
SSH応用編_20231129.pdf
icebreaker4335 vistas
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20... por NTT DATA Technology & Innovation
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
今、改めて考えるPostgreSQLプラットフォーム - マルチクラウドとポータビリティ -(PostgreSQL Conference Japan 20...
SNMPセキュリティ超入門 por mkoda
SNMPセキュリティ超入門SNMPセキュリティ超入門
SNMPセキュリティ超入門
mkoda355 vistas
光コラボは契約してはいけない por Takuya Matsunaga
光コラボは契約してはいけない光コラボは契約してはいけない
光コラボは契約してはいけない
Takuya Matsunaga16 vistas
The Things Stack説明資料 by The Things Industries por CRI Japan, Inc.
The Things Stack説明資料 by The Things IndustriesThe Things Stack説明資料 by The Things Industries
The Things Stack説明資料 by The Things Industries
CRI Japan, Inc.58 vistas
Windows 11 information that can be used at the development site por Atomu Hidaka
Windows 11 information that can be used at the development siteWindows 11 information that can be used at the development site
Windows 11 information that can be used at the development site
Atomu Hidaka88 vistas
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料) por NTT DATA Technology & Innovation
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)
速習! PostgreSQL専用HAソフトウェア: Patroni(PostgreSQL Conference Japan 2023 発表資料)

Cppmix 01