タグ

c++に関するgom68のブックマーク (33)

  • モダン C++ プログラミング - 日本語公開記事 - Confluence


      C++11C++98  TMP使   C++ C  C++  C ROI TMP  C++ Language Tutorial 
    gom68
    gom68 2016/02/01
  • Minimal Acyclic Subsequential Transducerで遊ぶ - Negative/Positive Thinking


     https://pycon.jp/2015/ja/proposals/vote/11/ Pycon2015PythonMinimal Acyclic Subsequential TransducerMinimal Acyclic Subsequential Transducer Finite State Transducer Transducerinitial state2pp-subsequentialpfinitely subsequentialminimal()Acyclic()
    Minimal Acyclic Subsequential Transducerで遊ぶ - Negative/Positive Thinking
    gom68
    gom68 2015/10/14
  • マルチコアプログラミングで遊ぼう!Part 2 : DSAS開発者の部屋

    Introduction 前回の記事で日語だったのですが、社内で英文でも良いじゃない?と言われたので、言葉にあまえて英語で失礼します。 Last time , we started to use our basic framework to execute independant tasks on multiple cores at the same time. We did preliminary test to see how much performance we were getting with push/popping tasks around. Now that we have a good measure of the cost of the system under load, we are going to look at some APIs and how we c

    マルチコアプログラミングで遊ぼう!Part 2 : DSAS開発者の部屋
    gom68
    gom68 2015/05/11
  • 前置インクリメント vs 後置インクリメント | 闇夜のC++

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

    gom68
    gom68 2015/04/17
  • Big Sky :: ちっちゃなビルドシステム qo が激しく便利だった件


    « Re: VimURL | Main | golang  gofmt gorename 使 » golang  gobuild C golang  cgoC  CFLAGS  LDFLAGS  package gtk // #include "gtk.go.h" // #cgo pkg-config: gtk+-2.0 import "C" import ( "fmt" "log" "reflect" "runtime" "strings" "unsafe" "github.com/mattn/g
    Big Sky :: ちっちゃなビルドシステム qo が激しく便利だった件
  • Herb Sutter氏の語る現代的C++プログラミングの基本

    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が最近リリースされ、重要な変...

    Herb Sutter氏の語る現代的C++プログラミングの基本
    gom68
    gom68 2014/10/27
  • 本当は怖くないムーブセマンティクス - yohhoyの日記(別館)

    この記事はC++ Advent Calendar 2012の15日目にエントリしています。 内容はC++11「ムーブセマンティクス」の入門記事となっています。 もくじ ムーブセマンティクス再考 シンタックス vs. セマンティクス コピー vs. ムーブ ムーブのもつ2つの意味 C++11のムーブセマンティクス対応 auto_ptrからunique_ptrへ auto_ptrの暗い過去 unique_ptrへの移行 std::moveの役割 ムーブセマンティクスを使おう C++11標準ライブラリとムーブ ムーブ"後"の中身は? ムーブを利用して関数を書く (文のみ約9500字) まえがき To move or not to move: that is the question. ― Bjarne Stroustrup, 2010(改)*1 プログラミング言語C++の新しい国際標準規格*2

    本当は怖くないムーブセマンティクス - yohhoyの日記(別館)
    gom68
    gom68 2014/09/09
  • 雑貨's tumblr - constexpr メタプログラミング:「速度が欲しいか… ならばくれてやる!」


    constexpr: ! source: http://cpptruths.blogspot.com/2011/07/want-speed-use-constexpr-meta.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+CppTruths+%28C%2B%2B+Truths%29&utm_content=Google+Reader C++11templateconstexpr(CPP!) templateC++03C++11constexpr
    gom68
    gom68 2013/08/06
  • 初めてのLeap Motion開発


    Leap Motion Developer SDKC++Leap2015SDKLeap  INDEX   Leap Motion Developer SDKC++Leap Motion稿OSWindows 8.1Mac OS X WindowsVisual Studio Express 2013 for Windows Desktop
  • アセンブリ読んだら負けかなと思ってる - 誰かの役に立てばいいブログ


     C/C++  gdb  strip   Step1.  Linux  #include <execinfo.h> #include <unistd.h> void dump_stack() { void* bt[100]; int n = backtrace(bt, 100); backtrace_symbols_fd(bt,
    アセンブリ読んだら負けかなと思ってる - 誰かの役に立てばいいブログ
    gom68
    gom68 2013/08/03
  • C++11 スマートポインタの話 - ここは匣

    C++にはガーベジコレクタが言語的には存在しないので、動的に確保したオブジェクトのメモリの管理はプログラマが責任を持って管理しなければ、メモリリーク・リソースリークなどの問題を生じてしまいます。 今時のプログラマはこうした問題を引き起こすリスクを減らす為に、記述ミスの起こりやすい生のポインタを使い自力でnewとdeleteを記述する事を避けて、安全なスマートポインタ、即ちオブジェクトの寿命により自動的にメモリ解放を行う便利なポインタを利用するべきです。 しかし、スマートポインタと言っても種類が幾つかあり、落とし穴も存在するのでどういった状況でどれを利用するのが良いのかを考察してみます。 Dynamic memory managementを見てみても C++11から随分増えていますね http://en.cppreference.com/w/cpp/memory std::auto_ptr

    C++11 スマートポインタの話 - ここは匣
  • ゲームプログラミングにおけるC++の都市伝説 - ソフトウエア研究会in秋葉原 - PukiWiki


    C++  C++ Advent Calendar 2012 22 Prev 21 CEAN Next 23  3 2012/12/22 written by h.godai @hgodai   1 C++ 2 boost::pool 3 boost使    8bit16bit32bitC
  • partake.in

    This domain may be for sale!

  • モダンなC, C++の開発環境の構築方法 - 考える人、コードを書く人


    C, C++Linux(DebianUbuntu)  apt-getUbuntuDebiangccg++ $ sudo apt-get install build-essential  (ltrace) GDB GNU Valgrind  strace  $ sudo apt-get install gdb valgrind strace  C, C++makeSConsCMak
    モダンなC, C++の開発環境の構築方法 - 考える人、コードを書く人
    gom68
    gom68 2012/09/11
    Valgrind
  • boostjp

    サイトは、Boost C++ Libraries日語コミュニティのWebサイトです。 Boost C++ Librariesに関する最新情報、日語ドキュメント、Boost.勉強会の情報などを提供していきます。 このWebサイトは、以下のGitHubリポジトリにて作成を行っています。 boostjp/site : WebサイトのMarkdownソース boostjp/image : Webサイトで使用する画像リソース HTMLデータのダウンロード boostjp.github.io-master.zip ローカルで閲覧できるHTMLを用意しています。 関連サイト C++リファレンスサイト cpprefjp 運営者 boostjpは、以下のコアメンバが運営を行っています: Akira Takahashi Usagi Ito melpon Kohsuke Yuasa Akiko Yaman

  • C++クラス設計に関するノート

    C++が他のオブジェクト指向言語と比べて難しいのは、やはりメモリ管理をプログラマが自分でしなければいけない点だと思います。よくよく注意しないと、削除し忘れたり、同じオブジェクトを2度削除してしまうというエラーが発生します。このノートでは、オブジェクトを「値オブジェクト」と「参照オブジェクト」というカテゴリに分け、詳細設計の段階で注意すべき点を整理しておきたいと思います。 0. はじめに 私自身今までいくつかのプログラミング言語を使ってきましたが、C++ が他のオブジェクト指向言語と比べて難しいのは、やはりメモリ管理をプログラマが自分でしなければいけない点だと思います。例えば、 Person* person = new Person(); と生成したオブジェクトは、使い終わったら次のように削除しなければなりません。 delete person; 生成してすぐ削除するなら簡単なのですが、実際に

    C++クラス設計に関するノート
  • JavaScript 的な考え方で C++ Template に入門してみた - IT戦記


     id:kazuhooku  Kazuho@Cybozu Labs: inC++    Template   C++ Template   1000speakers  C++ Template    JavaScript  C++    JavaScript  C++  //  void foo() { void bar() { void baz() { }
    JavaScript 的な考え方で C++ Template に入門してみた - IT戦記
  • VisualC++でテンプレートをCPP側で実装できない件 - かせいさんとこ

    結論 VisualC++コンパイラの仕様上、CPPには実装できない。 但し、明示的実体化を行うことで、実装可能。 例 TemplateClass.h:テンプレートのヘッダ template <class T> class TemplateClass { // コンストラクタ TemplateClass(T* t); int getValue(); }; TemplateClass.cpp:テンプレートの実装 #include "TemplateClass.h" // コンストラクタ TemplateClass<T>::TemplateClass(T* t) { this->t = t; } int TemplateClass<T>::getValue() { t->getValue(); } main.cpp #include "TemplateClass.h" // テンプレート実体化の

    VisualC++でテンプレートをCPP側で実装できない件 - かせいさんとこ
  • テンプレートの実装をヘッダに書かなければならない理由 - (void*)Pないと

    ロベールのC++入門講座 09-03 ロベールではテンプレートの実装はヘッダに書かなければならないとさらりと書かれていましたが、何故そうしないといけないのかがを読むだけでは今一良くわからなかったので色々調べてみたところ、理由がわかりました。 まず宣言と定義をファイルを分けて実装した場合、どういった状態になるかを見てみましょう。 // -- csample.h -- #ifndef __CSAMPLE_H__ #define __CSAMPLE_H__ template<class T> void template_swap(T& a, T&b); #endif // -- csample.cpp -- #include "csample.h" template<class T> void template_swap(T& a, T&b) { T t = a; a = b; b = t;

    テンプレートの実装をヘッダに書かなければならない理由 - (void*)Pないと
  • C++ 入門


       使C#C++JavaScriptSwiftRuby  OraclePL OraclePL SQLT-SQLOraclePLOraclePLOracle