タグ

c++に関するmasa0x80のブックマーク (31)

  • 【リクナビNEXT】で転職!

    現在、あなたがお使いのブラウザは、Cookie(クッキー)をブロックする設定になっています。 リクナビNEXTでは、個人情報保護と利便性の観点からクッキーの使用をお願いしています(個人情報収集等の目的では使用しておりません)。お手数ですが、ブラウザの設定を変更してください。

  • Deep C

    Programming is hard. Programming correct C and C++ is particularly hard. Indeed, both in C and certainly in C++, it is uncommon to see a screenful containing only well defined and conforming code.Why do professional programmers write code like this? Because most programmers do not have a deep understanding of the language they are using.While they sometimes know that certain things are undefined o

    Deep C
    masa0x80
    masa0x80 2011/10/11
  • C++ Style Guide

    Benjy Weinberger Craig Silverstein Gregory Eitzmann Mark Mentovai Tashana Landray This style guide contains many details that are initially hidden from view. They are marked by the triangle icon, which you see here on your left. Click it now. You should see "Hooray" appear below. Hooray! Now you know you can expand points to get more details. Alternatively, there's an "expand all" at the top o

    masa0x80
    masa0x80 2011/06/12
  • Amazon.co.jp: C++Coding Standards: 101のルール、ガイドライン、ベストプラクティス (C++in-Depth Series): ハーブサッター (著), アンドレイアレキサンドレスク (著), 浜田真理 (翻訳): 本

    Amazon.co.jp: C++Coding Standards: 101のルール、ガイドライン、ベストプラクティス (C++in-Depth Series): ハーブサッター (著), アンドレイアレキサンドレスク (著), 浜田真理 (翻訳): 本
  • letsboost::python

    abstract 必要なヘッダ <boost/python.hpp> 出来ること C++からPython / PythonからC++を使うための補助フレームワーク リファレンス en / jp sample 1 (C++からPythonインタプリタを使う) サンプルの動作確認バージョン [GCC4.4/1.41.0] [VC9/1.41.0] #define BOOST_PYTHON_STATIC_LIB //← Boost.Pythonを静的リンクする場合。 // これなしだとBoost.PythonのDLLに依存した実行ファイルになります #include <iostream> #include <boost/python.hpp> using namespace std; // てきとーな関数 int cppFun( int x ) { cout << "Inside C++" <<

  • C++入門

    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++

  • Kazuho@Cybozu Labs: MySQL (InnoDB) に直接アクセスしてタイムライン処理を高速化する話

    « フレンド・タイムライン処理の原理と実践 | メイン | MySQL の ORDER BY を高速化 » 2008年06月12日 MySQL (InnoDB) に直接アクセスしてタイムライン処理を高速化する話 フレンド・タイムライン処理の原理と実践 の続きです。 先のエントリでは、プルモデルの速度が当初予測していたよりも遅かった (というより SQL レイヤでのオーバーヘッドが大きそうだった) ので、MySQL Internals メーリングリストで質問したりしながら、C++ で直接 InnoDB にアクセスするようなコードを書いてみました。 タイムライン構築速度 タイムライン/秒 SQL そしたら、10倍以上高速に! ベンチマークを perl ベースのものから mysqlslap に変えたのですが、プッシュモデルの 2/3 の速度が出ています。これなら、データサイズが約 1/10 にな

  • データ型のアラインメントとは何か,なぜ必要なのか?

    以前このサイトとブログに,何度かアラインメントに関する記事を書きました (サイト内関連ページ参照). そのせいか「アラインメント」で検索して来てくれる人が多いので, 過去の記事に加筆修正してこのページを新たに作成しました. 加筆した点は次のとおりです. アラインメントとメモリアクセス回数の関係をわかりやすくするため, (ほんの少し) 図を導入しました. 「データがアラインされていないとメモリアクセス回数が増える」 と言葉で説明しているサイトは多いのですが, 図で示しているところはまだ見たことありません. アラインされていないアドレスにデータを書き込む場合, 読み出しの場合以上にメモリアクセス回数がかかる可能性があることを追記しました. 以前は「複合データ型 (配列,構造体,共用体) のアラインメント」はほとんど自明のことだと思っていたので軽く流していましたが, 意外なことにこれを解説してい

  • StackをLinked Listを使って実装 - yasuhisa's blog

    自分用メモ。データ構造とちょっとしたコードの例。 StackA stack is a last in, first out data structure. There are two main fundamental operation for stack: push and pop. The push operation adds an item to the top of the stack. The pop operation removes an item from the top of stack, and returns the value. We can implement the stack with linked list or array. Stacks are often used in the computing world. For example, expres

    StackをLinked Listを使って実装 - yasuhisa's blog
  • C++でページランクを実装 - yasuhisa's blog

    実験で使いそうなベースラインがページランク的なアルゴリズムだったので、Rubyの実装を適当にC++に翻訳してみただけ。超簡単なのでよい。 Rubyでもっとも重要なライブラリは何か?PageRankで計算してみた - aikeの日記 #include <map> #include <cmath> #include <iostream> #include <vector> typedef std::map<int, std::vector<int> > AdjacentMatrix; class PageRank { public: PageRank(AdjacentMatrix graph, int n, double damping = 0.85) { graph_ = graph; N_ = n; damping_ = damping; for (AdjacentMatrix::iter

    C++でページランクを実装 - yasuhisa's blog
  • Linus「C++ はひどい言語だ。これは、多くの平均以下のプログラマーが使ってるために さらに輪をかけてゲロゲロになっていて、どうしようもないゴミが 簡単に生産されるようになってる」

    /15 [4] (21:54) 原文: http://lwn.net/Articles/249460/ From: xxx To: xxx Subject: Re: [RFC] builin-mailinfo.c をマシな文字列ライブラリを使うようにすること Date: Thu, 6 Sep 2007 18:50:28 +0100 (BST) Message-ID: <alpine.LFD.0.999.0709061839510.5626@evo.linux-foundation.org> On Wed, 5 Sep 2007, Dmitry Kakurin wrote: > > Git のソースコードを最初に見たとき、ヘンだと思ったこと: > 1. C++ じゃなくてただの C を使ってる。理由は謎。移植性がどうとか言わないで、 > そんなのウソに決まってるから。 *あんた* のほうこそ

    masa0x80
    masa0x80 2010/06/13
  • Standard Template Library - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "Standard Template Library" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2012年8月) Standard Template Library (STL) は、プログラミング言語C++の規格で定義された標準ライブラリの一つ。ヒューレット・パッカード社在籍の研究者(当時)であったアレクサンドル・ステパノフ等によって考案され、後にANSI/ISO標準に組み込まれた。 概要[編集] STLは、その名の通りC++の比較的新しい機能であるテンプレートを最大限に生かす構成を取っており、コンテナ、イテレータ(反復子)、アルゴリ

  • C++でUTF-8単位で一文字とか - yasuhisa's blog

    UTF-8単位で1文字とか - Seeking for my unique color.をC++で書いただけ。あとで自分で使うかもなので。 #include <iostream> #include <string> #include <vector> std::vector<std::string> split_utf8(const std::string& str) { std::vector<std::string> result; std::string tmp; bool first = true; for (size_t i = 0; i <= str.size(); ++i) { if (first || (i != str.size() && (str.at(i) & 0xC0) == 0x80)) { tmp += str.at(i); first = false; con

    C++でUTF-8単位で一文字とか - yasuhisa's blog
  • UTF-8単位で1文字とか - yasuhisa's blog

    Rubyならeach_charでいいんでしょうが、C++でそれと同じようなことをしようと思ったらよく分からなかったので。WEB+DB PRESS Vol.53のp108付近(検索エンジンのところ)のことをやりたかった。 キモは (byte & 0xC0) == 0x80 の部分で まずUTF-8の符号方式では、2バイトめ以降は先頭2ビットが10で始まるという事実を利用し、まず各バイトがUTF-8の先頭かどうかを判定し((buf[i] & 0xC0) == 0x80)、その場合はそれらがタームであるとしparsedに追加をしていきます。 と説明がされている。 ゆとりなおいらにはビット演算が色々分かってないので、その辺から勉強しないといけない。0xC0というのは11000000を16進数で書いたもの。"&"と"&&"は全然違って、"&"はビット積となる。例えば、11100011と1100000

    UTF-8単位で1文字とか - yasuhisa's blog
    masa0x80
    masa0x80 2010/03/01
  • ウェブリブログ:サービスは終了しました。

    「ウェブリブログ」は 2023年1月31日 をもちましてサービス提供を終了いたしました。 2004年3月のサービス開始より19年近くもの間、沢山の皆さまにご愛用いただきましたことを心よりお礼申し上げます。今後とも、BIGLOBEをご愛顧賜りますよう、よろしくお願い申し上げます。 ※引っ越し先ブログへのリダイレクトサービスは2024年1月31日で終了いたしました。 BIGLOBEのサービス一覧

    ウェブリブログ:サービスは終了しました。
    masa0x80
    masa0x80 2010/02/28
  • TopCoderから学ぶ美しいマクロや型宣言 C++ - peroon's diary

    TopCoderというプログラミングコンテストで 他人のコードから発見した、美しいマクロや 型宣言を紹介します。 これを導入することで、C++のコードが短くなり、 早くコーディングすることができます。 ※すべてのTopCoder参加者がマクロなどをテンプレートと して用意しているわけではありません。 マクロなどを定義している人は半分より少ないようです。 TopCoderの他人のコードを参考に、 マクロやtypedefによる型宣言をまとめました。 コードの全体はこのようになっています。 (あとで個別にコメントします) //include //------------------------------------------ #include <vector> #include <list> #include <map> #include <set> #include <deque> #in

    TopCoderから学ぶ美しいマクロや型宣言 C++ - peroon's diary
  • 京都収納棚:DBMの率直な壱実装 - mixi engineer blog

    飲み屋に行くとかなりの確率で荷物を忘れて帰るmikioです。さて、今回はここ2ヶ月ほどで急ピッチで開発した軽量データベースライブラリ「Kyoto Cabinet」について紹介します。 開発の動機 以前から軽量データベースライブラリとしてご好評いただいているTokyo Cabinetですが、DBMとして必要十分な機能と性能を備えていてなかなか良いものだと自負しております。ただ、開発を進める中でいくつか不満な点があったのも事実です。端的に言えば、全てC言語で記述して、標準ライブラリ(とzlib/bzip2)以外の機能は全て自作しているので、最適化がしやすい反面、メンテナンスの難易度が高くなってしまっているというのが不満です。 そこで、多少性能が悪くなってもいいから、私自身としてお気楽に開発およびメンテナンスができて、移植性も高いような実装を作ってみようと思い立ったのが昨年10月頃。様々な検討を

    京都収納棚:DBMの率直な壱実装 - mixi engineer blog
  • 変電工 - Google C++スタイルガイド日本語訳

    国产亚洲欧美日韩在线一区二区三,AV蜜桃,中文乱码人系列一区二区,乱中年女人伦视频国产,男女性高爱潮是免费国产,国产成人精品三上悠亚久久,果冻传媒AⅤ毛片无码

  • 株式会社エス・スリー・フォー » sizeofの不思議

    sizeofの不思議 はじめに Cではsizeofによって構造体がメモリ上で占める大きさ(バイト数)を知ることができます。 struct s{ int x; int y; }; ... cout << sizeof(s) << endl; 僕の愛用する処理系、Visual C++ 6.0では 8が得られました。intひとつにつき4byteを消費するからでしょう。 それではC++でのclassの大きさはどうでしょう。内包するメンバ変数それぞれの占めるバイト数の総和になるのでしょうか。 class c { int x; int y; }; ... cout << sizeof(c) << endl; 答は…やはり 8 です。でもね、C++ではいつもこうなるとは限らないのですよ。 「C++はCよりデカい」と言われることがあります。その理由のひとつがここに明らかになります。 仮想関数 上記clas

    masa0x80
    masa0x80 2009/12/07
  • 1+1=2 を証明(C++で) - d.y.d.

    01:29 09/10/28 七不思議HA 七不思議ハードオオイカリパッチ深遠100F到達しました。 やった! (→ リプレイファイル) サブ剣に 日刀[封必-脱封守]+17。盾は深層で[潰][爆][祓]を順次追い出して左のスクリーンショットが最終形。 [冷]も消してよかったな。保存の壺フィーバーが来たのでなんとかクリアできた感じでした。 普通の引きだと70F前後で大抵力尽きる。 普通にバランスのとれてるノーマル版に、 ・シレンで言うところのカンガルー3種を投入し ・主人公LVアップ時のHPと攻撃力の上昇量を減らし ・床落ちアイテム数を減らし敵のドロップ率も減らし、 たらどうなるでしょうかというパッチ。このゲーム4倍速まで上がるのでオオイカリ状態がより一層ヤバい。 代わりに幾つかの印の効果が強化されてて、レアアイテム出現率がやや上がっているので、 その辺りを鍵に頑張ることになります。 ト