タグ

C++に関するfumikonyのブックマーク (42)

  • Bjarne Stroustrupのプログラミング入門書の査読の感想

    C++の設計者ストラウストラップによるプログラミング入門書の最新版日語訳が、9月に @asciidwango から出版されます。 https://t.co/ssT9ubfXtT — アスキードワンゴ編集部 (@asciidwango) August 5, 2016 アスキードワンゴ編集部からBjarne StroustrupのProgramming -- Principles and Practice Using C++というの第二版の邦訳が出版される。初版は翔泳社が出していたが、C++14に対応した改訂版の第二版の版権が空いていたので、アスキードワンゴから出すための作業をしていた。私は邦訳の査読をした。 今年になってから半年は、ずっとこのの査読をしていた。このためにC++標準化委員会の最新の文書を把握する作業が数ヶ月ほど滞った。そして、この仕事は、私がドワンゴに入社して以来、最悪の

    Bjarne Stroustrupのプログラミング入門書の査読の感想
    fumikony
    fumikony 2016/08/06
    入学して最初のセメスターで初めてプログラミングを学ぶ学生にC++で教えるの厳しそう…
  • コンストラクタに用途別の名前を付ける - Faith and Brave - C++で遊ぼう

    最近のC++標準ライブラリとBoostのちょっとした流行りな気がしますが、タグディスパッチのタグをユーザーに明示的に指定させることで、関数オーバーロードを容易にする方法がいくつかの場所でとられています。 たとえば、Boost.Containerのvectorには、以下のコンストラクタがあります。 // タグの定義 struct default_init_t {}; constexpr default_init_t default_init {}; // vectorのコンストラクタ vector::vector(size_type, default_init_t); // 3要素の配列を用意し、各要素の値を未初期化状態にする vector<T> v(3, default_init); この場合、単に3という1引数を渡すだけだと値初期化したリサイズ操作になりますが、default_init

    コンストラクタに用途別の名前を付ける - Faith and Brave - C++で遊ぼう
    fumikony
    fumikony 2016/05/05
  • よいコード、わるいコード

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

    よいコード、わるいコード
    fumikony
    fumikony 2015/05/12
  • 前置インクリメント vs 後置インクリメント | 闇夜のC++

    後置インクリメントにはひと目で遅くなりそうな処理が見て取れますね。 前置インクリメントがインクリメント処理後、単純に自身の参照を返すのに対し、後置インクリメントではインクリメント前に一時オブジェクトの生成、そしてインクリメント後にはその前に生成した一時オブジェクトを値で返しています。 前置と後置では、単純にオブジェクトをコピーして返す分、普通に考えたら後置の方が遅いよね。というのが従来の認識でした。 「C++ Coding Standards -101のルール、ガイドライン、ベストプラクティス」の中でも、特に後置インクリメントの必然性が無い時は迷わず前置インクリメントを使うことが推奨されてきました。 元の値を必要としないときは前置形式の演算子を使おう __C++ Coding Standards (p50) 新たな主張 「ゲームエンジン・アーキテクチャ第二版」の中の一節を紹介します。 しか

    fumikony
    fumikony 2015/04/17
  • C++ゆとり用 - 藻ログ

    世の中にはわたしのようなライトC++書き向けの資料が不足しているので, 普段使い*1用途で収集したものをまとめてみました. ドキュメントを読む C++プログラミングガイド モダン C++ プログラミング - 日語公開記事 - サイボウズエンジニアのWIKI STLのドキュメント cplusplus.com - The C++ Resources Network C++ reference - cppreference.com clangを使う Clang - Wikipedia gccよりもclangの方がC++ 規格に準拠しているとうたわれています. また, コンパイルもちょっと速い. *2 標準ライブラリを使う ∧∧∧∧∧∧∧∧∧ < STL!STL!STL!STL! > ∨∨∨∨∨∨∨∨∨ _     _ `/っ)    /っ) / / ∧_∧ / / ∧_∧ \\(   )\\(

    C++ゆとり用 - 藻ログ
    fumikony
    fumikony 2014/10/15
  • C++14の言語拡張まとめ - Faith and Brave - C++で遊ぼう

    C++14は、C++11に対するマイナーアップデートです。仕様のバグ修正や、C++11の比較的小さめな機能不足を補うバージョンになっています。 細かすぎる変更はさすがに書きませんが、ある程度大きめの変更を以下にまとめます。 この内容は、正式に策定されるまでに変更される可能性があります。 コア言語 2進数リテラル 変数テンプレート 通常の関数の戻り値型を推論 ジェネリックラムダ 一般化されたラムダキャプチャ constexpr関数の制限緩和 どこからともなく現れる結果の規定(前半, 後半) [[deprecated]]属性 数値リテラルの桁区切り文字 サイズ付きのデアロケーション initializer-listによるaggregate初期化の制約緩和 ロックフリーの定義 シグナルハンドラでできることの制限緩和と明確化 ライブラリ make_unique() コンパイル時整数シーケンス tu

    C++14の言語拡張まとめ - Faith and Brave - C++で遊ぼう
  • C++14の仕様策定が完了しました - Faith and Brave - C++で遊ぼう

    We have C++14! - Standard C++ C++14のDIS(Draft International Standard)に対する各国の投票が行われ、満場一致で承認されました。各国から(主に日から)のコメントによる文面の細かな修正が残っていますが、その作業が完了次第、ISO/IEC 14882:2014(E) Programming Language C++、別名C++14の規格が発行されます。 C++14は、2011年に発行されたC++11に対するマイナーバージョンアップです。小さな機能追加、および文面のバグ修正が含まれます。 C++14の更新内容は、以下のエントリにまとめてあります: C++14の言語拡張まとめ コンパイラの実装状況(言語機能) 次はC++17です。そちらはメジャーバージョンアップになる予定で、その議論はすでに始まっています。

    C++14の仕様策定が完了しました - Faith and Brave - C++で遊ぼう
  • C++14で遅延評価と関数型を実現するStreamsライブラリ

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    C++14で遅延評価と関数型を実現するStreamsライブラリ
    fumikony
    fumikony 2014/08/12
  • オープンソースのC++ライブラリ「Boost 1.56.0」がリリース

    オープンソースで開発されているC++ライブラリ「Boost」の最新版となる「Boost 1.56.0」が、8月7日(現地時間)にリリースされた。UNIX/Windowsそれぞれに対応したソースコードと、Windows向けバイナリが公式サイト経由でダウンロードできる。 「Boost」は、C++の開発者コミュニティによって公開されており、コミュニティメンバーの多くがC++の標準化委員会のメンバーのため、C++の標準化にあたっては「Boost」の機能が数多く取り入れられている。なお、使用にあたっては、商用/非商用いずれの場合も「Boost Software License」が適用される。 最新版では新たに、カスタマイズ可能なマクロである「Assert」、他のライブラリから使える依存関係が最小のコアユーティリティである「Core」、整数とテキスト間のリテラルテキスト変換を行う「Lexical_Ca

    オープンソースのC++ライブラリ「Boost 1.56.0」がリリース
  • CとC++の違い: Basic Concepts編

    京都C++勉強会の宣伝のために、CとC++の違いを、少しづつ解説することにした。 江添とボレロ村上の京都C++勉強会が、12月16日に行われる。これを書いている時点では、まだ空きがあるので、最新のC++14の新機能と、コンパイル時レイトレーシングを勉強したければ、ATNDで参加申し込みをせよ。 江添とボレロ村上の京都C++勉強会 | 集客ならイベントアテンド C++はCの完全互換ではない。Cのあまり良くない部分は、変更して改良した。ここでは、そのような変更点のうち、互換性に特に問題のあるものを取り上げる。 tentative definitionの有無 C言語には、tentative definitionという機能があった。以下のようなコードが合法になる。 int i ; int i ; // well-formed in C, ill-formed in C++ C++にはOne Def

    fumikony
    fumikony 2013/11/28
    参考になる
  • C++で作るWebアプリケーション

    14 views Boost.勉強会 #12で発表した「C++で作るWebアプリケーション」 ... More… Boost.勉強会 #12で発表した「C++で作るWebアプリケーション」 C++JavaScriptにコンパイルするコンパイラ Emscriptenを使ってC++でブラウザ上で動くアプリケーションを開発する方法を解説します C++で作るWebアプリケーション Presentation Transcript そんなC++の進出を拒んできた領域C++はとてつもなく汎用的な言語である2013年6月22日土曜日 WEB2013年6月22日土曜日 サーバ クライアントこっちは割とどんな言語でも書ける問題はこっち2013年6月22日土曜日 JavaScriptWEBブラウザで動く物を作るために長らく使われてきた言語近代的な多くのブラウザが共通して対応している唯一の言語2013年6月22

  • Better C としての C++ 入門

    fumikony
    fumikony 2013/05/03
    Better C としての C++ 入門
  • 構造化『並列』プログラミング - どらの日記

    構造化プログラミング。 といえば、順次、分岐、ループのパターンからなる、シリアルプログラミングにおける基スタイルですね。(これらだけしか使わなくてもシリアルプログラムは書けますっていうね) C++にはあらかじめこれらのパターンを簡単に使えるようにシンタックスが用意されています。 分岐はifやswitch、ループはwhile、for、doといったかんじで。 もちろんこれらのパターンは並列プログラミングでも使えます。 しかし並列プログラミングにおいては、これらのパターンだけで実装を行うことはほぼ不可能です。 そこで、並列プログラミングにおけるパターンとなる構造が考えられてきました。 これらを使うことで、よりパワフルかつ簡潔に並列プログラムのコードを書けるようになります。 1.マップ もっとも基的な並列パターンです。 まず、コードを見てください。 template <class T> voi

    構造化『並列』プログラミング - どらの日記
  • C++, Ruby, CoffeeScript: a visual comparison of language complexity

    Most people will agree that C++ is a fairly complex language. But just how complex is it? I got curious about quantifying that by comparing the number of concepts a programmer has to understand to learn a programming language in its entirety. Concepts in my definition include large categories like classes and operators, as well as more fine grained things like if-else statements and while loops. T

  • tricklib.com

    This domain may be for sale!

    fumikony
    fumikony 2012/06/06
    なにこれ気になる。「簡潔かつ乱暴に説明すると、このモジュールは printf デバッギングを簡単且つゴージャスに行う為のものです。」
  • http://www.mpi-forum.org/docs/mpi-20-html/node223.htm

  • MPI - C++ Examples

    MPI C++ Examples MPI is a directory of C++ programs which illustrate the use of the Message Passing Interface for parallel programming. MPI allows a user to write a program in a familiar language, such as C, C++, FORTRAN, or Python, and carry out a computation in parallel on an arbitrary number of cooperating computers. Overview of MPI A remarkable feature of MPI is that the user writes a single p

  • More C++ Idioms - Wikibooks, collection of open-content textbooks

    C++ has indeed become too "expert friendly" -- Bjarne Stroustrup, The Problem with Programming, Technology Review, Nov 2006. Stroustrup's saying is true because experts are intimately familiar with the idioms in the language. With the increase in the idioms a programmer understands, the language becomes friendlier to them. The objective of this open content book is to present modern C++ idioms to

    More C++ Idioms - Wikibooks, collection of open-content textbooks
    fumikony
    fumikony 2012/01/05
  • More C++ Idioms - Wikibooks

    C++ はあまりに『熟練者に優しく』なってしまった」(C++ has indeed become too "expert friendly") Stroustrup 氏の言は真実である。なぜなら熟練者は言語のイディオムに深く精通しているからである。プログラマが理解するイディオムの増加に従って、言語は彼あるいは彼女にとってよりフレンドリーになる。この open content book の目的はほどほどに C++ に精通しているプログラマに対して現代的な C++ のイディオムを提示し、C++ をよりずっとフレンドリーに感じるレベルにまで知識を引き上げる助けと成る事である。書は熟練した C++ プログラマが C++ を使ってプログラミングや設計を行う際に用いる事の多い再利用可能なイディオムの網羅的なカタログと成るよう意図されている。これは、それらのテクニックや語彙をひとまとめにしようという

    fumikony
    fumikony 2012/01/05
  • はてなブログ | 無料ブログを作成しよう

    ハリイカの焼売と中華炒め ハリイカをよく、見かけるようになりましたよ。生け簀で、泳いでいたものを一杯購入しました 立派な大きな墨袋や肝は冷凍保存して 柔らかな身は季節のお豆、お野菜と合わせて中華の炒めものに。新鮮なにんにくの茎は刻み、香り高く欲そそられますね 下足はミンチにし…

    はてなブログ | 無料ブログを作成しよう