タグ

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

  • Linus氏のC++に対する最近の否定的見解 | taro-nishinoの日記 | スラド

    最近、Linus氏はまたしてもReal World TechnologiesのModerated DiscussionsフォーラムでC++に対する否定的見解を投稿したことは皆さんも御存知でしょう。主要な投稿は以下の5つです。 http://www.realworldtech.com/forums/index.cfm?action=detail&id=110563&threadid=110549&roomid=2 http://www.realworldtech.com/forums/index.cfm?action=detail&id=110577&threadid=110549&roomid=2 http://www.realworldtech.com/forums/index.cfm?action=detail&id=110618&threadid=110549&roomid=2 ht

    stealthinu
    stealthinu 2015/03/16
    2010年の記事。なんというか問題に適した言語を使え、ということなのかなと思った。このエントリを読む限りc++でlinuxのカーネル書くのには向かないがRailsでやるようなことをこのレベルで気にする必要はないだろうし。
  • ニコニココメントサーバーにおけるメモリ使用量増大問題の調査と対策 - ドワンゴ 研究開発ブログ

    はじめに コメントサーバーは、ニコニコ関連サービスのコメントを司るサーバーである。稿は、ニコニコ広場で起こったコメントサーバーメモリ使用量増大問題について、我々コメントサーバー担当が行った調査と対策のまとめである。 今回のメモリ増大問題の解決にあたり、「仮説を立てる + 計測する→修正する→確認する」というパターンを繰り返した。このパターンは、ソフトウェアの様々な問題を調査するのに適用できる、基パターンである。 コメントサーバー概要 コメントサーバーについて簡単に概説する。 コメントサーバーはニコニコ関連サービスのコメントを管理するサーバーである。基的な機能は、新しいコメントの保存、およびコメントの出力である。ニコニコサービスのユーザーがコメントサーバーに直接触れることはなく、ニコニコのプレイヤーがコメントサーバーと直接やりとりを行う。ニコニコ動画の例でいうと、コメントサーバーを使用

    stealthinu
    stealthinu 2010/10/06
    ゾンビ化セッションが保持していた通信バッファがメモリ使用量増大の原因だったとのこと。ネットワークプログラミングって実際に動かしてみないとわからないこと多い。それにスレッドまで入れば特に。
  • C++の便利ツール・ライブラリ - DO++

    フルタイムで働きはじめて4ヶ月。 いろんなことがありました。 今日はインターンが来ているということもあり日頃のC++コーディングライフの中で大変重用しているツールを紹介します。といってもどれも有名なツールでググれば解説がでてくるとは思いますので、一言ずつだけ紹介してみます。みなさんも何かよさげなライブラリ・ツールがありましたら教えてください。 - valgrind/callgrind/cachegrind プログラムの実行結果を解析するツール群。まぁ、王道であえて紹介する必要はないかもしいませんが.。valgrindはプログラムのどこかでメモリが漏れているかどうかのチェックに使います.コードのどの部分で確保した領域がどこで漏れているかまで追跡することができます valgrind --leak-check=full command プログラムのどのが計算量的にボトルネックになっているかを調べ

    C++の便利ツール・ライブラリ - DO++
    stealthinu
    stealthinu 2010/08/17
    「valgrind/callgrind/cachegrind」メモリリーク、使用クロック数、キャッシュミス数などがわかる。
  • 今まで知らなかったswitch文の仕様

    switch文に指定する文は、ブロックでなくてもよい。 int main() { // OK switch(0) ; // OK switch(0) default : std::cout << "hello" << std::endl ; } もちろん、ラベル文がたったのひとつしか書けないので、実用上の意味はない。ブロックでなくてもいいとは知らなかった。てっきり、ブロックを指定するものだと思っていた。知らなかった。まあ、知っていても、全く役に立たない知識ではある。 追記:コメントを素直に実装するとこうなる void f( int const value ) { int i = 0 ; switch( value ) for ( ; i != 10 ; ++i ) { case 1 : case 2 : std::cout << "value is 1 or 2" << std::endl

    stealthinu
    stealthinu 2010/07/22
    この追記の部分のソースがすげえ。すげえ気持ち悪い…
  • C++の話(本当にあった怖い話)

    constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだGenya Murakami

    C++の話(本当にあった怖い話)
    stealthinu
    stealthinu 2010/07/15
    面白かった!この人も書いてるけど、結局は新しいものへの「恐怖心」からなんとか新しいものを取り入れないで済まそうとすると怖い話になるんだろうね。
  • C++ のプログラムのデバッグを楽にする方法

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

    C++ のプログラムのデバッグを楽にする方法
    stealthinu
    stealthinu 2009/04/14
    C++でスタックトレース表示できるようにする。なるほど便利かも。
  • 常駐型サーバープログラムのデバッグ手法

    BOOK: WEB+DB Press TITLE: 常駐型サーバーのデバッグ手法(ドラフト版) AUTHOR: (株)プリファードインフラストラクチャー 太田一樹 *注: この文章はWEB+DB PRESS Vol.48に掲載された記事のドラフト版です はじめに 今回はデバッグ関連特集ということで、常駐型サーバープログラムを作成する際のハマりどころやそれに対する解析方法・解析ツール・対策を、実際の経験を交えながら紹介したいと思います。 筆者は(株)プリファードインフラストラクチャーでインメモリ分散検索エンジン「Sedue (セデュー)」を開発しています。モバイル向け検索エンジン「エフルート」や、2008/11/6にリニューアルされました「はてなブックマーク2」などの検索バックエンドとして使われております。 この検索エンジンはいくつかの常駐型サーバープログラムから構成されており

    stealthinu
    stealthinu 2009/04/07
    サーバプログラム、特に大規模なもので、リソースのリークまわりでの調査・対応のしかた。
  • DXライブラリ置き場 HOME

    DXライブラリとは、DirectXを使ったWindowsソフトの開発に必ず付いて回るDirectXやWindows関連のプログラムを使い易くまとめた形で利用できるようにしたC++言語用の2Dゲームライブラリです。(使用する際はC言語の知識だけで大丈夫です) これによってプログラマーゲーム質的なプログラムに専念することが出来ます。かなり格的なソフト制作からお遊び程度のミニゲーム制作まで幅広くカバーしています! プログラムソースも公開していますので気兼ねなく使用してください。 <しばらくCM> 14歳からはじめる C言語わくわくゲームプログラミング教室 Visual Studio 2008編(左) と 14歳からはじめる C++わくわくゲームプログラミング教室(右) 著者はどちらも 大槻 有一郎様 ゲームプログラムの入門書です C言語版は、初めてC言語に触れる方や、これ

    stealthinu
    stealthinu 2009/02/04
    DirectXを簡単に利用するためのライブラリ
  • Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男

    Googleが、Webブラウザ上でネイティブバイナリコードを実行する「Native Client」を公開した。 Native Client http://code.google.com/p/nativeclient/ Google Earth,Quakeなどがすでに動いているようだ。 これはすごい!ブラウザ上でX86バイナリを動かす「Native Client」 http://www.moongift.jp/2008/12/native_client/ サンドボックスで安全性確保、オーバーヘッド5% ブラウザでx86バイナリ実行、グーグルが新技術 http://www.atmarkit.co.jp/news/200812/09/nacl.html あと、サンプルのlife.ccにSDL_surfaceと書いてあるのでSDLの描画まわりが既に動いているのだろうから、今後、たくさんのアプリがN

    Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男
    stealthinu
    stealthinu 2008/12/11
    おかしなコードにならないようにチェックが入る仕組み解説
  • Monorail - nativeclient - Native code for web apps - Monorail

    About Monorail User Guide Release Notes Feedback on Monorail Terms Privacy

    stealthinu
    stealthinu 2008/12/10
    Hello Worldのサンプルコード見て泣いた。こんな長いとは。でも必要な部分用意しちゃえば、あとは余計なコード書かなくても大丈夫なのかな?そう信じたい。
  • deadbeaf.org

    This domain may be for sale!

    stealthinu
    stealthinu 2008/12/10
    これ読んでやっとすごそうな気がしてきた。ごりごりやる系の仕事もWebアプリに出来ちゃうってことか。まずはニューラルネットエンジンとかでもやらせてみるかな。
  • Parallel Pattern Library - Faith and Brave - C++遊ぼう

    VC++10(VS2010)では、 Parallel Pattern Library (PPL) というのが提供されます。 これは並列処理を行うためのライブラリです。 インクルードするのは で、名前空間は Concurrency です。 まず、 std::for_each の並列処理版である parallel_for_each template <typename InputIterator, typename Function> Function parallel_for_each(InputIterator first, InputIterator last, Function func); // ※当は _Input_iterator _First, ... のようになってますが、読みやすいように勝手に直してます。 #include <iostream> #include <vec

    Parallel Pattern Library - Faith and Brave - C++遊ぼう
    stealthinu
    stealthinu 2008/10/30
    parallel_for_each どのくらい最適化されるんだろうか?
  • 碧落 - Calling C function that returns string from C#

    C# から文字列を返す C の関数を呼ぶ 概要 この記事は、 C# のアセンブリから C/C++ で作ったネイティブな C 型 DLL の関数を呼び出す方法についての覚え書きです。 ただし、その関数は「呼び出し側に文字列を返す」ものである場合の話です。 普通に P/Invoke (プラットフォーム呼び出し)しようとしたら、 ちょっとだけ「はまって」しまったので覚え書きしました。 なお「C 型 DLL」という言葉を勝手に発明しましたが、 要するに、 引数の型などを C 言語と互換性をとれる関数を公開した DLL を指しています。 つまり C 言語から自然に使える DLL という事です。 そのため、C と関数を公開する DLL を作れさえすれば言語は B でも D でも構いません(B 言語は冗談ですが(笑))。 具体例 具体例の概要 具体例に登場するプログラムは二つです。 一つは「文字列を返す

    stealthinu
    stealthinu 2008/08/21
    C#からCのDLLを呼び出す際、char*のような書き換え可能文字列はstringではなくStringBuilderを使う
  • Let's Boost

    Boost C++ Libraries の紹介サイトです。 :: by Google はじめに ご挨拶 Boost のインストール方法 参考リンク集 ニュース ◆ Version 1.42.0 と 1.41.0 対応 (2010/03/14) 新規ライブラリに関する Let's Boost のページ…: property_tree (汎用木構造型コンフィグ管理) / uuid (ユニークID生成器) ◆ RSS つけました (2009/08/28) ◆ Version 1.40.0 と 1.39.0 対応 (2009/08/28) 新規ライブラリに関する Let's Boost のページ…: Signals2 (Signal/Slotライブラリ改良版) ◆ Version 1.38.0 と 1.37.0 対応 (2009/02/22) 新規ライブラリに関する Let's Boost のペー

    stealthinu
    stealthinu 2008/08/12
    boostのまとめサイト
  • http://ml.tietew.jp/cppll/cppll_novice/article/836

    stealthinu
    stealthinu 2008/08/12
    『コンパイル・オプション -DNOMINMAX を唱えればmix/maxマクロ悪霊が退散』なるほど。
  • Boost C++ライブラリのビルドとインストール - reflux flow

    Visual C++でBoost C++ライブラリをビルドする。 はじめに ここではVisual C++ 2008とbjamを用いてBoost C++ライブラリをビルドする方法を説明します。 Boost C++ライブラリは複数のライブラリで構成されています。ヘッダファイルだけで構成されているライブラリを使用する場合は、ライブラリをビルドする必要はありません。しかし、FilesystemやIOStreams、Regex、Threadなどのライブラリを利用するときは、ライブラリをビルドする必要があります。boost-jamは、Boost C++ライブラリをビルドするためのツールです。 ダウンロード SourceForge.netからBoostのソースコードとboost-jamのバイナリファイルをダウンロードします。2008年8月31日現在、Boostの最新版は1.36.0、boost-jamの

    stealthinu
    stealthinu 2008/08/12
    boost入れた後、vcへの設定方法が書かれていた。
  • Let's Boost - インストール方法

    インストーラやパッケージを使う方法 一番簡単な方法です。コマンド一発でインストール完了です。 ただし、下記以外の開発環境や、最新バージョンリリース直後などは、 パッケージ化が追いついていないことがあります。 その場合手動での Boost のダウンロードやビルド、設定が必要になります。 → 手動インストール Visual C++ の場合 Visual C++ 7.1~10.0 用のインストーラが boostpro で公開されています。 ビルド済みライブラリが自動インストールできます。 Cygwin gcc の場合 CygwinのインストーラでBoostを一緒にインストールできます。 「Devel」カテゴリの「boost」と「boost-dev」を選択してください。 UNIX系環境の場合 大抵のディストリビューションでパッケージ化されているようです。 yum install boost boo

    stealthinu
    stealthinu 2008/08/12
    boostのインストール方法。ビルド済みインストーラによる方法が書かれていた。
  • BoostPro Computing - Free Downloads

    We're very grateful to the Boost community for creating professional-quality software and an innovative development environment around which we could build a business. We hope, by publishing free software that enhances the Boost experience, that we're “giving back” something of value to the Boost community . BoostPro Binary Installer for Visual C++ For users of Visual C++ 7.1 (Visual Studio 2003),

    stealthinu
    stealthinu 2008/08/12
    boostのVC用インストーラ込みバイナリ。これは便利だわ~
  • Boost C++ Libraries

    Boost C++ Libraries ...one of the most highly regarded and expertly designed C++ library projects in the world. — Herb Sutter and Andrei Alexandrescu, C++ Coding Standards Welcome to Boost.org! Boost provides free peer-reviewed portable C++ source libraries. We emphasize libraries that work well with the C++ Standard Library. Boost libraries are intended to be widely useful, and usable across a br

    Boost C++ Libraries
    stealthinu
    stealthinu 2008/08/12
    汎用C++ライブラリ
  • 1