タグ

C++に関するkoda3のブックマーク (8)

  • C++でJavaっぽい、いやJava以上のsynchronized - Qiita

    C++11以降だとstd::mutexとstd::lock_guardがありますし、これらは簡単なクラスだから古いC++でも数秒で自作できますし、でも排他スコープが明確なJava/C#のsynchronizedの記法がうらやましいなーとこんなマクロ書いちゃうこと多いですよね。(よね?) #define synchronized(monitor) \ if (auto __lock = std::make_unique<std::lock_guard<std::mutex>>(monitor)) std::vector<int> data_; // いろんなスレッドから読み書きするデータ std::mutex monitor_; // mutexオブジェクトを宣言しておいて ... synchronized (motinor_) { // 排他制御された処理 data_.doSomethin

    C++でJavaっぽい、いやJava以上のsynchronized - Qiita
    koda3
    koda3 2015/08/23
  • よいコード、わるいコード

    cvpaper.challengeはコンピュータビジョン分野の今を映し、トレンドを創り出す挑戦です。論文サマリ・アイディア考案・議論・実装・論文投稿に取り組み、凡ゆる知識を共有しています。 http://xpaperchallenge.org/cv/ 資料はViEW2021チュートリアルセッション「最新研究の始め方」のプレゼン素材です。また、xpaper.challengeの2020年末ワークショップとしてプレゼンした「研究効率化Tips」の拡張版です。資料では3社12研究室300ページにわたるノウハウの詰め合わせです。 VIEW2021のチュートリアルセッションでは時間の制限があるため、こちらの資料から一部抜粋して発表を行うことになりますが、VIEW2021チュートリアルセッションの方にも足を運んでいただければ幸いです。 VIEW2021チュートリアルセッション:http://vie

    よいコード、わるいコード
    koda3
    koda3 2015/05/12
  • InfoQのC++17についてBjarne Stroustrupへのインタビュー記事の翻訳

    Stroustrup: Thoughts on C++17 - An Interview C++の設計者にして最初の実装者であるBjarne Stroustrupは、C++17の設計と新機能の議論の起爆剤となるための、ドラフトを公開した。Stroustrupによれば、C++17は以下の3つの設計目標がある。 巨大な依存関係のあるソフトウェアのサポートの改良 並列実行に高級なモデルのサポートの提供 コア言語を簡単にする 上記の設計目標について、StroustrupはC++17に入る以下もしれない機能を列挙した。Stroustrupの好ましいと考える機能の例が以下だ。 モジュール、ローカル性とコンパイル時間の改良 契約、仕様の改良 型安全union、関数型プログラミング風のパターンマッチを土台にしたものになるだろう コンセプト レンジ 統一関数呼び出し記法、仕様とテンプレートライブラリ利用を簡

    koda3
    koda3 2015/05/08
  • C++ マルチスレッド 入門

    開発者にとってシェルが必要不可欠なものであることは論を俟ちませんが、当たり前の存在すぎてこれがどのように実現されているのかを知る機会はあまりないと思います。トークでは、シェルがどのように実現されているのかを、実際にシェルを実装する過程を通じてお話しします。 ※ もともとのトークのタイトルは「入門 シェル」でしたが,わかりやすさのため「入門 シェル実装」にタイトルを変更しています.

    C++ マルチスレッド 入門
    koda3
    koda3 2015/04/25
  • Socket.IO C++ | Socket.IO

    I'm really proud to announce the first release of the Socket.IO C++ Client on GitHub! Based on Boost and WebSocket++, this full-featured Socket.IO 1.0 client has the fundamental advantage of working on multiple platforms. Check out the directory of examples. It contains examples of iOS, QT, and CLI chat clients! To learn how to use this client, I put together a QT chat example that communicates us

    Socket.IO C++ | Socket.IO
  • C# 7に向けて(2): 性能と信頼性

    C# 7の提案のうちいくつかを見た瞬間、思ったのは「C++ 11みたい」でした。 まあ、背景には、年々C#の適用範囲が広がっていること、そして、オープンソース化に伴って今後はさらに広がるであろうことがあります。 ゲーム開発の標準言語と言えばC# その広がった先の1つはゲーム開発でしょう。「ゲーム開発の標準言語と言えばC#」なんていう煽り(わりかしほんとに「煽り」ではあると思う。「話題にならないよりは炎上する方がマシ」くらいの覚悟の上の)もあります。まあ、割かし昔から、ゲーム開発者にもC#好きな人はいて、ゲーム会社の社内ツールなんかはC#で書かれることが結構あったみたいです。しかし、「ゲーム自体を」となると、これは割かし最近の話。「XNAがあったし(震え声)」と小声で主張もしたいところですが、実際のところ、割かし皮肉なことに、「C#でゲーム開発」が注目を浴びるようになったのはUnityのおか

    C# 7に向けて(2): 性能と信頼性
    koda3
    koda3 2015/02/02
  • C++の正規表現ライブラリ: std::regex

    いまさらながら、C++の正規表現ライブラリを調べている。 C++の正規表現ライブラリ、std::regexは、boost::regexを土台に設計されている。boost::regexの正規表現の文法は、perlなのに対し、std::regexは、ECMAScriptである。この理由は、しっかりと正規表現の文法が定義されていて、外部規格として参照できる品質のものが、perlには存在しないためだ。std::regexはposixと拡張posixとawkとgrepとegrepの正規表現にも対応している。 記事では、ECMAScriptの正規表現を使う。また、参考のためのECMAScriptのコードも使う。 全体一致 文字列全体が正規表現に一致するかどうかを調べたいとする var re = /1234/ ; var text = "1234" ; var result = re.test( te

  • C++ マルチスレッドプログラミング

    Ohotech 特盛 #10 ( http://ohotech.connpass.com/event/7517/ )で発表した資料です。Read less

    C++ マルチスレッドプログラミング
    koda3
    koda3 2015/01/11
  • 1