
http://anond.hatelabo.jp/20100222033058 あなた・・・『覚悟してdisってる人』・・・ですよね。 人を「dis」ろうとするって事は、逆に「dis」られるかもしれないという危険を、常に『覚悟してdisってる人』ってわけですよね・・・
http://d.hatena.ne.jp/faith_and_brave/20100220/1266673222 C++0x 読んだが ダメっぽいな。 まず第一にエンタープライズでの開発が考慮されていない。エンタープライズの開発だと100人200人 マスタークラスから ジュニアーまで様々なレベルの開発者が携わる。 その中で重要になってくるのは可読性。 はっきり言って、歴史的な可読性を犠牲にして効率が上がるならともかく、気持ちの問題程度の効率では意味がない。 第2に スレッドとファイバーの違いぐらいわかれ、わざわざスレッド起こしたらコンテキストスイッチにどれだけコスト食うんだよ。 関数コールするとレジスタとかが、スタックにPUSHされるんだよってわからん奴が、IF書くなと同じで、スレッドってコンテキストスイッチの塊なんだよってのがわかんないのに下手にスレッド書かせるな。 3にラムダ式・・・
One of the key values at Facebook is to move fast. For the past six years, we have been able to accomplish a lot thanks to rapid pace of development that PHP offers. As a programming language, PHP is simple. Simple to learn, simple to write, simple to read, and simple to debug. We are able to get new engineers ramped up at Facebook a lot faster with PHP than with other languages, which allows us t
アメリカ時間の昼ごろにTwitter上が一つのニュースで埋め尽くされました。 PHPをC++に変換して高速化する技術をFacebookが公開したというものです。世界中のPHPハッカーが注目する興味深いリリースという事でちょっと長いですが、リリースノートの和訳を行いました。 原文 http://developers.facebook.com/news.php?blog=1&story=358 Facebookにおいて重要なことのひとつが動作の速さです。過去6年間にわたって、PHPが提供する高速な開発ペースによって多くを成し遂げてきました。プログラミング言語としてみると、PHPはシンプルです。簡単に習得し、簡単に書き、簡単に読み、簡単にデバッグする事ができます。我々は他の言語よりも早くエンジニアを獲得し、それによってより早いイノベーションをすることができます。 今日、私は2年に渡って作業して
えー、久しぶりにですます調です。本日の第2回PHP拡張勉強会でグダグダながらもちょこっと発表させていただいた、あのライブラリについての紹介です。 ダウンロードは以下からできます。 http://www.voltex.jp/downloads/mozo-php-20080324.tar.bz2 最新版はこちら >> http://voltex.jp/downloads/mozo-php-20080405.tar.bz2 2009-08-10 追記: 現在は Boost.PHP という名前で以下の場所で開発中です。 http://github.com/moriyoshi/boost.php なぜMozo.PHPを作ったのか Boost.Python という、Boost Project の一部である変態ライブラリがあるのですが、これは Python の拡張をおおよそ C++ とは思えないような書
米Facebookは米国時間の2月2日、PHPの性能と拡張性を改善するプロジェクト「HipHop for PHP」を発表した。PHPコードをC++に変換するプログラムで、すでにFacebook内で利用されているという。今後、オープンソースプロジェクトとして公開し、開発を進める計画だ。 FacebookはPHPを利用した大規模なソーシャルネットワーキングサイトだが、拡張性という問題に直面していた。HipHop for PHPはこの問題を解決するために数年前にスタートしたプロジェクトで、現在すでにFacebook内で利用されているとのこと。これによりWebサーバのCPU利用率が改善し、性能の改善に役立ったという。開発者によると、CPUの利用率を平均して50%削減可能としている。 HipHop for PHPにはソースコード変換機構とC++向けに再実装したPHPランタイムシステム、高速化のために
C/C++ を使うプログラマは大勢います。しかし、その多くは OJT を通して言語を学んだのではないでしょうか? 実はそこに大きな落とし穴があります。 コンピュータや工学のことをよく知らない人たちは、時代の先端を歩むプログラマには「迷信」など無関係だと信じて疑わないかも知れません。しかし、迷信や誤解はどんな世界にも常に存在しています。 というわけで、ここでは C/C++ にまつわる迷信、誤解、よくある間違いを採り上げていきます。非常に後ろ向きな企画ですが、暇つぶし気分転換に読んでみてください。もしかすると、ご自身が迷信にとらわれていたことに気付くかもしれません。 追記(2009/03/15) このコーナーでは、C/C++ にまつわる迷信、誤解、よくある間違いを扱っています。決して「迷信」だけではないのですが、タイトルにはすべて[迷信]を付けています。 これは、主に検索エンジンでタイトルを見
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message kobaです。 AndroidでC,C++を使ってミドルウェアやネイティブメソッドを書くときには標準の ランタイムライブラリ(bionicという名前がついている。)を使いますが これには大きな制限があります。 $(TOP)/bionic/libc/CAVEATS の中に以下のようなことが書かれています。 おおむねPOSIXに準拠するが以下のような機能はサポートしないことを決めた。 - C++の例外はサポートしない。無駄に大きくて遅いコードになるので組み込みシステム には向かないからとのこと。 - pthreadのキャンセル
C++入門 基礎知識は仮定しません あなたは 人目のお客さんです。 ゆっくりしていってください。 C++入門1 プログラミングの基礎知識 C++入門2 coutを使った出力 C++入門3 cinを使った入力 C++入門4 オブジェクト指向について C++入門5 クラスを作ろう C++入門6 クラスを作ろう(補足) C++入門7 クラスの練習 C++入門8 コンストラクタの引数 C++入門9 クラス間の関係 C++入門10 乱数 C++入門11 while文とfor文 C++入門12 値を戻す関数 C++入門13 値を戻す関数の例 C++入門14 パブリックとプライベート C++入門15 継承 C++入門16 継承の練習 C++入門17 さらに継承 C++入門18 デストラクタ C++入門19 配列 C++入門20 ポインタ C++入
C++の練習はあんまり進んでいないのだけど、がんばろうという気持ちはあります!!1という昨今ですが、id:kazuhookuさんが作成したC++リファレンスビューワであるところのcpprefが素敵な感じだったので、やっぱりEmacsで使いたいなーってんで、同じような動作をするものを書いてみました。 http://github.com/kentaro/emacs-cppref cppref.elへのパスを通したあとに(require 'cppref)と書くだけでM-x cpprefできます。プロンプトがでるので、Perl版と同様、適当に入力してみるといい感じにドキュメントを拾ってemacs-w3mで表示します。 ざっくりでっちあげただけなのでいろいろ微妙ですが、どうぞご利用ください。というか、僕がちゃんと利用するようにしよう……。
インテル コンパイラーではOpenMP 3.0やC++ラムダ関数、並列コンパイルといった、新規格や最近注目されている機能がいち早く取り入れられている。本記事では、インテル コンパイラーが採用した新規格について解説する。 インテル コンパイラーの特徴の1つに、新しい技術や標準規格への素早いサポートが挙げられる。たとえば最新のインテル コンパイラー 11.1では、プログラムを簡単に並列化できる新たなキーワードが追加されているほか、11.0からの機能として現在策定中のC++の新規格「C++0x」や、新たな並列化基盤「OpenMP 3.0」のサポートが追加されている。本記事ではこれらの機能について、簡単ではあるがその概要と使用例を紹介しよう。 C++ 0xのサポート C++は1983年代に開発されて以来、しばらくは公式な標準化規格が存在せず、各コンパイラメーカーにより独自に拡張が加えられていった。
C Library The elements of the C language library are also included as a subset of the C++ Standard library. These cover many aspects, from general utility functions and macros to input/output functions and dynamic memory management functions: <cassert> (assert.h)C Diagnostics Library (header)<cctype> (ctype.h)Character handling functions (header)<cerrno> (errno.h)C Errors (header)<cfenv> (fenv.h)F
2009年07月24日 C++ ではキャストでアドレスが変わる場合があります このごろは組み込みソフトウェア開発でも C++ が使われるようになってきました。C から C++ に移行する際、おそらく誰もが一度は引っかかるのではないかという C++ の挙動について書きます。 C++ では、多重継承した class(struct) のアドレスを扱う際には注意する必要があります。 #include <stdio.h> struct A { int a; }; struct B { int b; }; struct C : public A, public B { }; int main() { C *c = new C(); B *b = c; A *a = c; printf("C = %p\n", static_cast<void*>(c)); printf("B = %p\n", stat
編集距離(edit distance)とは二つの文字列がどの程度異なっているかを示す数値であり、レーベンシュタイン距離(Levenshtein distance)を指すことが多い。文字の挿入、削除、置換それぞれを一つの操作として必要な操作の最小数を求めるものだ。例えば、kittenとsittingの編集距離を求める場合、下記のように3回の操作でkittenをsittingに変更できるので編集距離は3となる。 1. sitten (k を s に置換) 2. sittin (e を i に置換) 3. sitting (g を挿入) そこで今回は編集距離を求める複数のアルゴリズムについてC++で実装してみた。 動的計画法 編集距離を求めるもっとも一般的なアルゴリズムは、動的計画法(dynamic programming)だろう。計算時間はO(mn)であり、手軽だ。C++で書いたコードを下に示
動作合成とC/C++/SystemC/SystemVerilogの協調設計 ―― Cynthesizerの活用事例 渋谷 貴利,内海 功朗,森 義一 ソフトウェアのどの部分をどのような思想でハードウェア化するのか,事例をもとに解説する.具体的には米国Forte Design Systems社の動作合成ツール「Cynthesizer」を利用し,C言語で書かれたソフトウェアの一部をVerilog HDLなどのハードウェア記述言語に変換する.その後,SystemVerilogのDPI機能を利用してハードウェアとソフトウェアの協調検証環境を構築する. (編集部) ソフトウェア(アルゴリズム)をハードウェア化することは以前から行われてきましたが,最近の設計技術の発展により,容易かつ迅速に実現できるようになってきました.ハードウェア化による利点として, 大幅な性能向上低消費電力化(低クロック化)CPU
この記事には複数の問題があります。 改善やノートページでの議論にご協力ください。 脚注による出典や参考文献の参照が不十分です。脚注を追加してください。(2024年3月) 古い情報を更新する必要があります。(2018年12月) 独自研究が含まれているおそれがあります。(2018年12月) 雑多な内容を羅列した節があります。(2018年12月) C++とJavaとの違いは、それら言語の歴史から辿ることができる。 C++はC言語の派生規格であり、手続き型プログラミング言語にクラス(抽象データ型)を導入し、静的型付けオブジェクト指向プログラミングを実現するために開発された。C言語の設計思想を維持・継承し、C言語の利点(機械語やアセンブラに準ずる高速性やハードウェア操作性など)を一切損なわないようにしているため、他のオブジェクト指向言語に比べてコードの実行効率や柔軟性を重視している反面、安全性は犠牲
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く