タグ

c++に関するbull2のブックマーク (10)

  • [PDF] Cプログラマのための カッコつけないプログラミング の勧め

    カッコつけないプログラミング 光成滋生(サイボウズ・ラボ) Cプログラマのための の勧め 自己紹介 
好きな言語 ‣ C++, Xbyak(自作x86/x64用C++用JITアセンブラ) ‧ C++WG小委員会エキスパート 
まあまあ使う言語 ‣ Python, JavaScript, Haskell 
サイボウズ・ラボで最近やってること ‣ 暗号の高速実装研究 ‣ 自然言語処理(まだ始めたばかり) 普通じゃないプログラミング2010 9/21 / 202 昨今の言語 
多機能,高度な概念 ‣ C++0x ‧ 型推論,ラムダ式,move semanticsなどが追加される ‣ Haskell ‧ 高階関数,参照透過性,モナド,非正格評価… 普通じゃないプログラミング2010 9/21 / 203 難しい概念は理解も使用も大変 
人にものを教えるには,その7倍の理解が必要 (要出典) 
プ

    bull2
    bull2 2010/09/28
    ちょ、おま(ぉ。char* main = [0xXX, 0xYY, ...]; という奴を思い出した
  • C++ における const の重要性と活用 - ニートの世紀

    const なんて知らないよ、という層の人間が一定世の中には存在するようです。 そういった人間の大多数の主張は恐らく「面倒くさい」「嫌い」とかだと思うのですが、const 性に気を配るのは C++ においてはメンバ変数を private にしないといけないことと同程度にやらないといけないことです。という話をします。 const というとまず真っ先に出てくるのは「値が変わらないことでコードが読みやすくなる」とか「参照透明性のため」とかで、参照透明とか言葉がすごく綺麗ですごいって感じだと思います。ボクは参照透明という言葉がすごく好きです。 でも C++ は現実の言語なので現実を見ましょう。そんなのどうだっていいんです。 前提として C++ はそれなりに速い何かを作るための言語である、ソースコードはコメントや何らかの形のドキュメントに勝る、という二点をあげておきます。 例えば巨大なオブジェク

    bull2
    bull2 2010/01/15
    昔H先生が言っていたconst病。
  • http://www.machu.jp/posts/20090307/p01/

    http://www.machu.jp/posts/20090307/p01/
  • http://ml.tietew.jp/cppll/cppll/thread_articles/12291

  • 開明堂 : 読んだ : 渡邊誠人『C++/CLI 研究』

    C++/CLI は VC2003 でのマネージ拡張を更に推し進めたものである。そのため .net Framework プログラミングにおける C++ 言語拡張といってしまえばそれまでとなるが、C++/CLI では C# と並び標準化をも意識している──正しくはマネージ拡張の標準化作業版が C++/CLI なのだということである。C++ の拡張性を維持したまま Java などの便利な点を取り込んだといってしまっては乱暴か。しかし、GC、interface、Generic (= template)、finally キーワードなどは Java と同様である。これ以外では列挙型クラス/構造体、イベントハンドラ/オーバーライド専用を含む新しいキーワード(予約語)などが含まれている。 かくいう私もマネージ拡張や C# は MS だけのプロプライエタリな技術としか思っていなかった。しかし、C++/CLI

    bull2
    bull2 2008/06/04
    C++/CLIって実は便利だったのね
  • Resource acquisition is initialization - Wikipedia

    This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed. Find sources: "Resource acquisition is initialization" – news · newspapers · books · scholar · JSTOR (December 2012) (Learn how and when to remove this message) Resource acquisition is initialization (RAII)[1] is a pro

    bull2
    bull2 2007/07/26
    RAII。constructor/destructorでリソースの確保/開放する。オブジェクトの実体をローカル変数にとれば、スコープを抜けると自動的に開放される。Javaにもfinally以外の方法で、スコープを抜けたら自動開放する機能が欲しいなぁ。
  • http://www1.kcn.ne.jp/~robe/pf/pf008.html

  • GNU コンパイラ集(GCC) の使い方と移植について

    Node:Top, Next:G++ and GCC, Previous:(dir), Up:(dir) Introduction このマニュアルでは、GNU コンパイラの使い方、インストール方法、移植方法や、新しい機能や互換性の無い部分、それにバグレポートの方法などについて説明している。GNU CC のバージョン 2.95 に対応している。(日語版ドラフト-17 July 2001) G++ and GCC: C や C++ のプログラムがコンパイル可能Invoking GCC: gcc のコマンド行オプションInstallation: GCC のインストール方法C Extensions: C 言語の GNU の拡張C++ Extensions: C++ 言語の GNU の拡張Gcov: gcov: GCC のテストカバレージプログラムTrouble: GCC のインストールで問題が起

    bull2
    bull2 2006/09/04
    gccの__asm__
  • memologue - C++でsynchronized methodを書くのは難しい (1)

    Javaにはsynchronizedという便利なキーワードがあります。このキーワードを使うと、例えば次のように簡単にメソッドを「同期化」することができます。同期化されたメソッドは、複数のスレッドで同時に実行されることがありません。 public class Foo { ... public synchronized boolean getFoo() { ... } さて、C++ (with pthread) で同様の機能を実現するにはどうしたらよいでしょう?まず、一番単純な方法は次のようなものです。 // 方法 a void Foo::need_to_sync(void) { static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER; pthread_mutex_lock(&mutex); // 処理 pthread_mutex_un

    memologue - C++でsynchronized methodを書くのは難しい (1)
    bull2
    bull2 2006/08/31
  • PythonMatrix:C++開発統合環境の決定版!

    【1.1】   特徴 オープンソース GPL2ライセンスによる公開です。 クロスプラットフォーム wxWidgetsを使って開発されており、LinuxWindowsで動作確認済み。 MacPPCへのサポートが始まっているようです。 GNUコンパイラによるビルド プロプライエタリなライブラリへの依存がありません。 コンパイラーをバンドル Windows版はMinGWをバンドルしたリリースパッケージを用意 リリース版はインストーラ一発で開発環境のセッティングが完了する。 サポートコンパイラが豊富 GCC (MingW / Linux GCC) MSVC++(2003 2005) Digital Mars C++ Borland C++ 5.5 Intel C/C++ Open Watcom SDCC(ワンチップマイコン向け!) Digital Mars

    bull2
    bull2 2006/08/15
  • 1