タグ

c++とprogrammingに関するgymnoのブックマーク (76)

  • Python at Google.notes (2006/02/12)

    Python at Google.notes (2006/02/12) python Python at Google.notes GooglePython が使われているとよく言われているが、どういうところで使われているのだろうか。これは、Python at Google で検索すると分かる。Python at Google.notes を見てみよう。Google で使われている言語は、C++, Python, Java が主なもの。これ以外の言語は、特別に許可を取らないと使えないようだ(Perl なども一部で使われているがやはり許可が必要)。一番多用されているのは C++ で、Python がそれに次ぐ。それゆえ Python は SWIG を多用していようだ。Python のバージョンは、2005年5月の時点では、2.2 が使われている。あれだけのサービスで使われていると、さす

  • 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

  • Google Japan Blog: Google が公開しているソフトウェアの解説 ( その 1 )

    メディア関係者向けお問い合わせ先 メールでのお問い合わせ: pr-jp@google.com メディア関係者以外からのお問い合わせにはお答えいたしかねます。 その他すべてのお問い合わせにつきましては、ヘルプセンターをご覧ください。

    Google Japan Blog: Google が公開しているソフトウェアの解説 ( その 1 )
  • Cで実現する「ぷちオブジェクト指向」:CodeZine

    はじめに CodeZineではお初にお目にかかります、επιστημη(エピステーメー)です。最初のアーティクルはクラシックなCのお話。 昨今のアプリケーションはオブジェクト指向言語による実装が主流と言ってもいいでしょう。C++Java、VB.NETさらにはRubyPythonといったスクリプト言語まで、オブジェクト指向でない言語を探すのに苦労するくらいです。 記事では、今なお現役バリバリで活躍している手続き型言語の代表格(?)Cによる、オブジェクト指向のマネゴト(オブジェクト指向風味のCコーディングスタイル)を試みます。対象読者 もっぱらCを主な開発言語として使ってはいるけども、オブジェクト指向に興味と憧れを抱いている方。抽象データ型 手始めにオブジェクト指向の特徴の1つ、「抽象データ型(ADT:Abstract Data Type)」をCで実現してみます。抽象データ型とは、データ

  • Techniques for Scientific C++

    Todd Veldhuizen <tveldhui@acm.org> Indiana University Computer Science Technical Report # 542 Version 0.4, August 2000 This report summarizes useful techniques for implementing scientific programs in C++, with an emphasis on using templates to improve performance. Chapter 1: Introduction 1.1: C++ Compilers 1.1.1: Placating sub-standard compilers 1.1.2: The compiler landscape 1.1.3: C++-specifi

  • http://www.h6.dion.ne.jp/~game296o/GameMain.html

  • GNU make 日本語訳(Coop編) - 目次

    著者 :リチャード・M・ストールマン, ローランド・マグラス (GNU プロジェクト) 訳者 : いのまた みつひろ / ecoop.net(技術メモ公開中) 翻訳文更新日:May 20, 2002(翻訳終了・未校正) Linux 標準搭載の make コマンド, 別名 gmake の日語版です。 この資料の著作権は Richard.M.Stallman & Roland.McGrath と Free Software Foundation にあり、また翻訳版には前述の著作者に加えて ecoop.net に著作権があります。再配布・転載等される方はこちらを見て下さい。 GNU Project についてはgnu.org(日語)を参照のこと。 序文はこちら GNU makeユーティリティは大きいプログラムのどの断片が再コンパイルされる必要が あるかという事と,それらを再コンパイルする発行コ

  • http://saaf.jp/sum/desc/539

  • やねうらお―よっちゃんイカを買いに行ったついでに家を買う男 - プログラミング名著100選

    プログラミングの書籍のなかから、100冊を選りすぐってみたい。 まずはC/C++言語系。 「Effective C++」「More Effective C++」「Effective STL」この3冊は外せないだろう。持ってなければモグリだ。(「Effective C++」「More Effective C++」は、原著第3版が出たのでリンク差し替えた。) 「Modern C++ Design」に関しては、どうせ使えもしない(?)lokiの解説がてらtemplateの解説をしてあるだけなので、いまであれば、boostのtemplate解説である「C++ Template Metaprogramming」のほうがいいような気もするが、これまだ邦訳されてないので英語の苦手な人は「Modern C++ Design」以外の選択肢は無い。 あと例外安全について書いてあるとして「Exception

    やねうらお―よっちゃんイカを買いに行ったついでに家を買う男 - プログラミング名著100選
  • doxygen 日本語訳

    Doxygen ライセンス Copyright © 1997-2001 by Dimitri van Heesch. Copyright © 2001 by OKA Toshiyuki (日語訳) Permission to use, copy, modify, and distribute this software and its documentation under the terms of the GNU General Public License is hereby granted. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. Se

  • C++ Labyrinth

    C++ ラビリンス C++ は、数多くの謎、咒文、罠、そして宝箱が仕掛けられた、壮大な迷宮である。 その C++ 迷宮をさまよう同志たちへ、ささやかながら、いくつかの道標を お贈りしたい。 もちろん、私自身、C++ 迷宮の一彷徨者に過ぎない。誤りや不備な点があれば、 遠慮なく指摘していただきたい。 キャスト (2001-03-01) dereference (2001-03-01) マルチスレッドにおける singleton (2001-03-17) 契約による設計 (2001-03-25) 戻値とコンストラクタの妖しい関係 (2001-04-09) マルチスレッドにおける singleton (その2) (2001-04-10) 自己言及的なテンプレート (2001-06-13) オーバーロードは継承できない (2001-06-16) GCC 3.0 のインストール (2001-07-0

  • Blog - Mikula Beutl - SEO Consulting

    This guide is the safest way to do a domain switch, you get all you need to change a blocked domain. What is a user flow and a user journey? There’s a macro view of a customer experience that we can analyze and partially control.

    Blog - Mikula Beutl - SEO Consulting
  • memologue - C/C++の定数の型の話, C90/C99の差分のびみょーな話

    Cのソースコードに m = 195; とか n = 0xffffffff; とか書いたときの定数(右辺)の型って、なんであるかご存じでしょうか? また、C90(1990年版のISO C言語規格)とC99(1999年版のそれ)ではその型が微妙に異なったりすることがあるんですが、ご存じでしょうか? さらには、お使いのマシンがILP32であるかLP64であるかLLP64であるかによっても、微妙に型が違ってきたりするんですが、それについてはどうでしょうか? えーもちろん、普段は「Uがついてなかったらint, Uがついてたらunsigned intジャネーノ?」くらいの理解でも殆ど不自由しないわけですが、詳細な理解がないとハマるケースも稀にあります。 私はというと、上に書いたような事は、C90/99の差違を除いてはだいたい理解しているつもりだったのですが、C90/99の差異について無頓着だったがため

    memologue - C/C++の定数の型の話, C90/C99の差分のびみょーな話
    gymno
    gymno 2007/02/19
    "整数定数の型は、次の並びのうちでその値を表現できる最初の型とする。"
  • Expression Templates (Todd Veldhuizen)

    You may also be interested in: Source code for the dvec example in this paper: dexpr.h dvec.h dvec.cpp Template Metaprograms Books mentioning expression templates Articles mentioning expression templates C++ Templates as Partial Evaluation [PS] [HTML] [bibtex] Other articles and papers by this author The Blitz++ home page PETE, the Portable Expression Templates Engine POOMA, parallel array classes

  • memologue

    google-perftoolsというx86,x86_64,ppcなUNIX向けのプロファイラの(cpu-profiler部分)を、armなLinuxに対応させてみました。何かの役に立つかもしれないので、patchおよびpatch作成作業のメモを載せます。arm-v5tアーキテクチャ(ARM9系)向けの移植です。 Linux/ARM向けのソフトウェアのパフォーマンスを解析したいなぁと思うことがあったのですが、OProfileはカーネル入れ替えがめんどくさい、gprofはプロファイル専用のバイナリを作成するのがめんどくさい、プロプラな奴は興味ないということで移植しました。移植の方がめんどくさいだろという話もありますが。perftools自体の説明はこちらが便利です。あーそういえばAndroidもARMでしたっけ? パッチ http://binary.nahi.to/google-perfto

    memologue
  • 間違ったコードは間違って見えるようにする - The Joel on Software Translation Project

    Joel Spolsky / 青木靖 訳 2005年5月11日 水曜 私が最初の当の仕事をはじめたのは1983年9月に遡る。それはオラニムというイスラエルの大きな製パン工場で、16台の飛行機ほどもある巨大なオーブンで、毎晩10万個のパンが作られていた。 はじめて工場に入った時、そのあまりの汚さに信じられない思いだった。オーブンの側面は黄ばんでいるし、機械は錆びていて、そこらじゅうが油だらけだった。 「いつもこんなに汚いの?」と私は聞いてみた。 「なんだって? なんの話をしてるんだ?」とマネージャが答えた。「掃除したばかりだから、今が一番きれいな状態なんだ」 なんてこった。 毎朝の工場の清掃を何ヶ月か続けて、ようやく彼らの言っていたことが理解できるようになった。パン工場では、きれいというのは機械にパン生地が付いてないことを言うのだ。きれいというのは、ゴミ箱に発酵したパン生地が入ってないこと

    gymno
    gymno 2007/02/06
    ハンガリアン記法の誤解
  • 人工言語世界 - kMonos.NET

    プログラミングのTips的なもの、あるいはお遊びの産物、 あるいはリンク集などを置いていくつもり。 C++ Let's boost C++のクラスライブラリ Boost の紹介。 C++ Library Links boost以外にも面白そうなライブラリが色々あるのでリンク! C++ Glossary 用語集というか略語集というか。 klx C++ Libraries 自分で使っているC++小物ライブラリ集。 D D言語リファレンス 日語版 訳してみました。 わかったつもりになるD言語 Dの紹介ドキュメントです。D Memo 2007。 Diki D言語で書いたWiki。 tx UTF-8 以外の環境で日語IOをどうにかする応急処置ライブラリ General テキストエディタを作るメモ テキストエディタを作ろうとしたときに個人的に作ったメモ。 Digital Mars C++ を使うメ

  • いやなブログ - RAII と setjmp/longjmp

    RAII と setjmp/longjmp C++ には RAII (Resource Acquisition Is Initialization) というイディオムがあります。これはリソースの開放を確実に行うためのテクニックとして C++ のプログラムで広く用いられています。しかし、RAII も setjmp/longjmp という落とし穴があります。 RAIIの基 次のプログラムはメモリリークを起こします。 #include <string> using namespace std; int main() { string *p = new string; return 0; } このプログラムをビルドして valgrind でテストすると次のようなエラーメッセージが表示されます。4バイトのメモリリークが検出されました。 % g++ test.cc % valgrind ./a.ou

    gymno
    gymno 2007/01/10
    auto_ptrってeffective STLでは非推奨 >COAPでした
  • 二流プログラマの三流な日常: STLのコンパイルエラーを解読する

    STLは便利ですが、煩雑なエラーメッセージに悩まされる事が多いのも事実です。 そんなときにはSTLFiltをお勧めします。 STLFiltは、STLのエラーメッセージを短くします。対応するコンパイラは10種類以上です。 仕組みとしては標準出力のテキストを置換していく事により、読みやすくするものです。Visual C++の例でみてみましょう。 まずはフィルタ適用前のエラーを見てください。フィルタ適用後は青字の部分が変化します。 > cl -GX filttest.cpp filttest.cpp(28) : コンパイルされたクラスのテンプレートのインスタンス化 'void G etFirstValue<char>(std::vector<_Ty> &)' の参照を確認してください         with         [             _Ty=char         ] 次に

    gymno
    gymno 2006/12/13
    STLFilt
  • C/C++ programming

    激しく今更感がありますが, 自分自身を呼び出すテンプレートのことです. テンプレートメタプログラミング(template metaprogramming)というのが一般的なようです. 再帰呼び出しの終了にはテンプレートの特殊化(template specialization)を利用します. template<int n> struct sum1toN { enum { value = sum1toN<n - 1>::value + n }; }; template<> struct sum1toN<0> { enum { value = 0 }; }; int main() { printf("sum=%d\n", sum1toN<10>::value); return 0; } 実行すると sum=55 と表示されます. この55はコンパイル時