C++

C++日本語リファレンスcpprefjpでスポンサー募集をはじめました

C++

cpprefjp.github.io opencollective.com C++日本語リファレンスを提供しているcpprefjpプロジェクトで、スポンサー募集をはじめました。 スポンサー募集のサービスとしては、Open Collectiveを使用しています。このサービスの特徴としては、手数料として10%…

C++ / Boostの新たな非営利団体The C++ Alliance

C++

The Future of Boost (From Vinnie Falco) (2023-05-08 15:46:03) - Boost developers' mailing list Boost C++ Librariesのコンサルティング会社BoostProがなくなって以来、Boostはリーダー不在でふわふわした状態でした。 Boost.Beast作者のVinnie Falco氏…

C++23記事の訂正 : enumerateの使い方が間違っていました

C++

2023年2月17日発売の『Software Design 2023年3月号』に書いたC++23記事で、以下のようにviews::enumerateの例を紹介していますが、 for (auto x : enumerate(v)) { println("{} {}", x.index, x.value); } xの型は実際にはtuple<difference_type, T>となる予定なので、index/val</difference_type,>…

『Software Design』誌にC++23の解説記事を書きました

C++

gihyo.jp 2023年2月17日発売の『Software Design 2023年3月号』に、C++23の解説記事を書きました! C++11からC++20までの進化を振り返りつつ、2023年末に策定されるC++23がどのように変わるのかを解説しています。

私個人へのスポンサー募集を開始しました

C++

github.com GitHub Sponsorsで、私個人へのスポンサー募集を開始しました。 私はcpprefjpとboostjpという2つのウェブサイトを運営・執筆しています。 cpprefjpはC++の日本語リファレンスサイトで、boostjpはBoost C++ Librariesの日本語情報サイトです。これ…

optionalとshared_ptrで共通のnull

C++

std::optionalとstd::shared_ptrを両方使っていると、空状態を設定するためにあっちはstd::nullopt、こっちはnullptrのように指定するので、使い分けがわずらわしいときがあります。 なにも考えず{}を指定してもよいのですが、「値初期化というのではなく空…

jthreadを簡易実装する

C++

C++20で導入されたstd::jthreadは、スレッドを中断させる仕組みをもった便利なクラスです。今回は、C++14でそれを簡易的に実装してみました (C++14の機能としてはラムダ式の初期化キャプチャを使っています。ラムダ式に外の変数をムーブするために必要)。 st…

列挙型が特定の列挙子をもっているか判定する

C++

ひさしぶりにテンプレートメタプログラミングをしました。 候補となる列挙型がだいたい同じ列挙子をもっているけど、一部の列挙型にだけある列挙子が存在する場合もある、という場合に処理を集約させたい場合のコードです。 #define DEFINE_HAS_ENUMERATOR(n…

Boost 1.74.0リリース

C++

Version 1.74.0 - Boost C++ Libraries Boost 1.74.0リリースノート Boost 1.74.0がリリースされました。リリースノートはいつものように、boostjpサイトで翻訳 + 情報補完したものを公開しています。 新ライブラリは、STLInterfaces。CRTPベースでコンテナ…

Boost 1.73.0リリース

C++

Version 1.73.0 - Boost C++ Libraries 1.73.0リリースノート - boostjp Boost 1.73.0がリリースされました。リリースノートはいつものように、boostjpサイトで翻訳 + 情報補完したものを公開しています。 新ライブラリは、WindowsでUTF-8出力できるcoutとか…

Chronoライブラリ最後の日

C++

遊びで調べただけのネタ記事です。 C++20段階の標準時間ライブラリChronoが、西暦何年まで扱えるのかを調べました。 #include <iostream> #include <chrono> using namespace std::chrono; int main() { auto tp = system_clock::time_point::max(); // ほんとはこれでできるは</chrono></iostream>…

C++ MIX #7 開催案内

C++

cppmix.connpass.com 次回のC++ MIXの日程が決まりました。2020年1月29日 (水) です。 前回、コミュニティの成熟度が上がったと考え、定員を50人ベースから60人ベースに増やしました。 ディスカッションも最初に実施したときの問題をできるだけ改善し、なる…

Boost 1.72.0リリース

C++

Version 1.72.0 - Boost C++ Libraries Boost 1.72.0リリースノート - boostjp ブログを書くのが一日遅くなりましたが、Boost 1.72.0がリリースされました。 いつものように、boostjpサイトで日本語訳 + 情報補完したものを公開してあります。

C++ MIX #6 開催案内

C++

cppmix.connpass.com 次回のC++ MIXの日程が決まりました。 前回、カジュアルなディスカッションが思った以上に好評だったため、改善を入れつつ今回も継続して行います。 また、翔泳社から出版されている書籍『独習C++』がC++17対応で改訂されることになりま…

C++20を相談しながら調べる会 #3

C++

cpp20survey.connpass.com 少し間が空いてしまいましたが、第3回をやります。これが最後になるか、続くのかはまだわかりません。 C++20のCommittee Draftがでたので機能はおそらく出揃いましたが、調べきれるかどうか・・・。

C++標準ライブラリの数学定数への道のり

C++

P0631R8 Math Constants C++20で数学定数が入ることが決まりましたね。やっと標準ライブラリの範囲で円周率を定数として使えるようになります。 ここまでの道のりですが、 constexpr (C++11) 変数テンプレート (C++14) インライン変数 (C++17) 数学定数 (C++…

Boost 1.71.0リリース

C++

Version 1.71.0 - Boost C++ Libraries Boost 1.71.0リリースノート - boostjp Boost 1.71.0がリリースされました。リリースノートの日本語訳 + 情報補完したものをboostjpサイトで公開しています。 新ライブラリは、Variant2。C++17で標準化されたstd::vari…

C++ MIX #5 の参加募集を開始しました

C++

cppmix.connpass.com 2019/09/04 (水) になりました。 今回、チャレンジとしてカジュアルなディスカッションの時間を設けてみようと思います。勉強会という場は、モチベーションが高い人が集まっている場だと思うので、多くの参加者が発表を聴いてる、という…

C++ MIX #4 の参加募集を開始しました

C++

C++ MIX #4 - connpass 2019/06/26に開催します。 今回から、勉強会ロゴを正式なものにしました。ロゴはzakさんに作っていただきました。プログラミングの魔導書の表紙、各記事のアイコンからずっとお世話になってます。

Boost 1.70.0がリリースされました

C++

Version 1.70.0 - Boost C++ Libraries Boost 1.70.0リリースノート - boostjp リリースノートは、いつものようにboostjpサイトで翻訳 + 情報補完したものを公開しています。 新ライブラリは、expectedのバリエーションを提供するOutcomeライブラリ、多次元…

C++20を相談しながら調べる会、を開催しました

C++

C++20を相談しながら調べる会 - connpass C++20は3月の国際会議ですごく巨大なアップデートになって自分で調べるのがしんどくなってきました。 だれかに相談しながら調べたいな、と思って自社の会議室を使って少人数で集まっていました。 会の性質として、近…

lower_boundとupper_boundで区間抽出

C++

C++でlower_boundとupper_boundを用いて区間に含まれる個数を求める - @yumarimo Qiita lower_bound()とupper_bound()でこんなことができたんだなーと発見できて楽しかったので、時間で区間を指定して抽出するのをやってみました。 簡易的なBoost.Interval C…

C++ MIX #3 を開催します

C++

C++ MIX #3 - connpass 日程が決まりました。2019/04/17 (水) 19:00〜21:00です。 前回、抽選期間が長すぎたので、今回は1.5日程度で抽選します。このあたりはまだまだ試行錯誤しています。

noexceptがついてないファイルシステム操作

C++

C++17のファイルシステムライブラリは、エラー時に例外を投げるバージョンと、error_codeへの参照をパラメータにとって例外を投げないバージョンの2つが用意されています。 ですが後者についても一部、例外を投げる可能性がある関数があります。 戻り値でpat…

C++ MIX #2 開催案内

C++

C++ MIX #2 - connpass 2月に、C++周辺の勉強会であるC++ MIXを開催します。 今回、参加枠は先着順ではなく抽選になります。一部の方にはご不便をおかけすることになるかもしれませんが、ご了承ください。

Boost 1.69.0がリリースされました

C++

Version 1.69.0 - Boost C++ Libraries Boost 1.69.0リリースノート - boostjp Boost 1.69.0がリリースされました。リリースノートはいつものように、日本語訳 + 情報補完したものをboostjpサイトで公開しています。 今回、新ライブラリとして安全な整数演算…

C++の勉強会を新しく企画しました

C++

cppmix.connpass.com 「C++ MIX」という名前で、新しい勉強会を @okdshin さんと企画しました。 休日に勉強会開催をするのはパワーがすごく必要でたいへんなので、いまのところ継続性を重視して平日夜に2時間程度の開催ということにしています。 Boost.勉強…

cpprefjp : <filesystem>のリファレンス作成が完了しました

C++

<filesystem> - cpprefjp 2017年11月から作業していたので、10ヶ月もかかってしまいました。 引き続き、C++17のライブラリと言語仕様のメジャーな機能を優先的に作業し、C++20も合間を見て作業していきます。</filesystem>

Boostの創始者Beman Dawes氏が引退

C++

[boost] Twenty years and time to retire 1998年5月にBeman氏が提案したことからBoost C++ Librariesプロジェクトがはじまりました。そこから20年が経ったことを期に、Beman Dawes氏がBoostから引退されます。 彼が作成したFilesystem、Timer、Endianといっ…

Boost 1.68.0がリリースされました

C++

Version 1.68.0 - Boost C++ Libraries Boost 1.68.0リリースノート - boostjp Boost 1.68.0がリリースされました。 いつものように、リリースノートの日本語訳 + 情報補完したものを、boostjpサイトで公開しています。