タグ

関連タグで絞り込む (156)

タグの絞り込みを解除

cとc++に関するtyruのブックマーク (300)

  • C++0xの並行プログラミング本 - Faith and Brave - C++で遊ぼう

    C++ Concurrency in Action』 著者:Anthony Williams これすごくほしい。 Boost.Threadの作者が書いたです。 追記: 買いました。翻訳しよーっと。

    C++0xの並行プログラミング本 - Faith and Brave - C++で遊ぼう
  • mpl::string - Faith and Brave - C++で遊ぼう

    BoostML - is there an mpl::string いま、mpl::stringが作られているらしく、こんな感じで使えるようにしたいみたいです。 typedef boost::mpl::string<'hell', 'o wo', 'rld!'> str; シングルクォーテーションで文字列っぽいのを書いてるのは、multicharacter literalsっていうんだそうです。 始めて知りました。 でも、VC++9.0(2008)だとmulticharacter literalsが変な値になるらしく バグ報告出したみたいなのですが、VC++9.0のサービスパックとしては「修正しない」って言われたそうです。 さてさて、どうなるやら。

    mpl::string - Faith and Brave - C++で遊ぼう
    tyru
    tyru 2009/05/28
    multicharacter literals
  • Boost.String Algorithm - Faith and Brave - C++で遊ぼう

    Boost.String Algorithmにあるsplit便利ですね。 今まで自分で作ってました。 #include <iostream> #include <vector> #include <string> #include <boost/algorithm/string.hpp> #include <boost/foreach.hpp> #define foreach BOOST_FOREACH using namespace std; using namespace boost::algorithm; int main() { string s = "a b c"; vector<string> result; split(result, s, boost::is_space()); // スペースで区切る foreach (const string& item, result)

    Boost.String Algorithm - Faith and Brave - C++で遊ぼう
    tyru
    tyru 2009/05/28
  • 『C++テンプレートテクニック』もうすぐ発売です。 - Faith and Brave - C++で遊ぼう

    私とεπιστημηさんの2人で、C++テンプレート書きました。 (ぼくは著者名を名で載せてます) 発売日は2009/04/24(金)で、税込2,940円になります。 内容は、テンプレートの基礎から始まり、テンプレートメタプログラミング、 Boost C++ Librariesの中で使われている手法、C++0xでテンプレートがどのように進化していくか等を紹介しています。 屋とかAmazonで見かけたら買ってやってください。

    『C++テンプレートテクニック』もうすぐ発売です。 - Faith and Brave - C++で遊ぼう
    tyru
    tyru 2009/05/28
  • 可変引数テンプレートでの型リストまとめ - Faith and Brave - C++で遊ぼう

    C++0xでは、可変引数テンプレートという機能が追加されます。 これを使うと、テンプレートパラメータを可変個受け取ることができ、 template <class... Args> // ...と書くと可変引数テンプレートになる class tuple; 可変引数テンプレートは型のリストと見なすことができます。 tuple<int> t1; // 要素1つ(int)の型リスト tuple<int, char> t2; // 要素2つ(int, char)の型リスト tuple<int, char, long> t3; // 要素3つ(int, char, long)の型リスト ということで、型リストがどこまでできるか試すために リスト処理を作ってみました。 headとtail - 先頭と後部 length - 長さ at - I番目の型を取得 concat - 型リストの連結 cons -

    可変引数テンプレートでの型リストまとめ - Faith and Brave - C++で遊ぼう
  • C++マニアック,mem_fun,mem_fun_ref,クラスのメンバ関数を呼び出すテンプレート関数

    C++マニアック mem_fun,mem_fun_ref,クラスのメンバ関数を呼び出すテンプレート関数 ページの末尾へ トップページへ mem_fun、mem_fun_ref、クラスのメンバ関数を呼び出すテンプレート関数 mem_fun、mem_fun_ref は、STL の functional の一つで、クラスのメンバ関数を呼び出すためのテンプレート関数です。functional とは、補助関数とでもいう意味でしょう。 mem_fun とは で、何をするものか mem_fun とは ページの先頭へ まず mem_fun とは、何をするものなのかを解説しましょう。次は、引数の無いメンバ関数 Func0 を持つクラスです。 class CThing { public: int Func0() { return printf("This is Func0\n"); }

    tyru
    tyru 2009/05/27
  • CとC++は似たようなモノか? | スラド

    ストーリー by makeplex 2009年05月16日 22時52分 違和感がないならまだ初心者ということか? 部門より プログラミング言語のカテゴリ分けで、CとC++は一緒にされることが多い。Q&AサイトやSNS等でも「CとC++」というように同類視されている。 先日の当/.jpのアンケートでも、プログラミング言語に関する設問はこうなっている。 □C/C++ □C# □Objective-C CプログラマとしてはCとC++を一緒にされて迷惑している。実際, ネット上での質疑応答でも「まず CかC++どっちの質問?それを書いてくれないと答えられないよ」ってのが最初の応答だったりもするし。 個人的には、言語の「同類度」という観点では Cだけ別にしてオブジェクト指向という共通点がある C++/ObjectiveC/C#を一緒にするほうが妥当に感じるのである。 言語のグループ分けの際にどれと

    tyru
    tyru 2009/05/17
    こんなタグ付けててすいません
  • Google が公開しているソフトウェアの解説(その4)- Performance tools -

    GoogleGoogle Code でオープンソースとして公開しているソフトウェアの解説シリーズ(前回のエントリ)の第 4 回です。今回は Performance tools について紹介します。この Performance tools は、実際に Google 社内で広く使われており、特に、C++ でテンプレートを使用するマルチスレッドアプリケーションを開発する際に役立ちます。Linux 環境を主に対象としています。 Performance tools とは? C や C++ でプログラムの書いたことのある多くの人は、「プログラムを高速化したいけれど、どこが一番のボトルネックか分からない」とか、「メモリリークがあるようだけれど、どこで発生しているか分からない」といった問題で苦しめられた経験が一度くらいはあると思います。もちろん、こうした問題の解決策として、アドホックにプログラムをチ

    Google が公開しているソフトウェアの解説(その4)- Performance tools -
    tyru
    tyru 2009/05/11
  • ACCU 2009の資料 - Designing Multithreaded Programs in C++0x(Anthony Williams) - Faith and Brave - C++で遊ぼう

    ACCU 2009でのAnthony Williamsのセッション、「Designing Multithreaded Programs in C++0x」の資料が公開されています。 designing_mt_programs.pdf

    ACCU 2009の資料 - Designing Multithreaded Programs in C++0x(Anthony Williams) - Faith and Brave - C++で遊ぼう
  • BK通信 ―Bad Knowhow Tsushin―:#03 C++のバッドノウハウ|gihyo.jp … 技術評論社

    ソフトウェアなどを使いこなすために、ストレスを感じながらもしぶしぶ覚えなければならないようなノウハウ、「⁠バッドノウハウ」がテーマの連載、第3回の今回は極めてBKフル(バッドノウハウが多い)言語であるC++を取り上げたいと思います。 C++再考 いまどきのWebアプリケーションはPerlRubyなどのLightweight Languageで作られているものが多く、C++の出番は非常に少ないように見えます。ところが、知人などに話を聞いてみると、基的にPerlで作られているサービスでも、性能に効いてくる要所要所にC++が使われているという話をよく耳にします。 C言語ではなくC++を使うのは、オブジェクト指向言語ということもありますが、標準ライブラリに含まれる便利なコンテナ(string、vector、mapなど)を使いたいという理由も大きいようです。たしかに、一度これらのコンテナを使っ

    BK通信 ―Bad Knowhow Tsushin―:#03 C++のバッドノウハウ|gihyo.jp … 技術評論社
    tyru
    tyru 2009/05/04
    "C++にはboolという型があり,true(真),false(偽)の値をとります。と,思っていたのですが,初期化を忘れているとt
  • C言語の対話環境ccons - きりかノート 3冊め

    cfe-dev MLに流れていた「[ANN] ccons : an interactive console for C based on clang and LLVM」 http://lists.cs.uiuc.edu/pipermail/cfe-dev/2009-April/004960.html http://code.google.com/p/ccons/ http://fizzysoft.net/personal/ccons.pdf clang/LLVMを利用した、irbのようなC言語の対話環境"ccons"というプロジェクトの告知。名前は似てるけどsconsとはぜんぜん関係ない。 Cのインタプリタというのはこれまでにもあったけれど、clangのライブラリを使ってるのはたぶん初じゃないかな。さっきチェックアウトしたr165でtestディレクトリを除いたファイルの総行数が3,000程

    C言語の対話環境ccons - きりかノート 3冊め
    tyru
    tyru 2009/05/03
  • GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ

    GT Nitro: Car Game Drag Raceは、典型的なカーゲームではありません。これはスピード、パワー、スキル全開のカーレースゲームです。ブレーキは忘れて、これはドラッグレース、ベイビー!古典的なクラシックから未来的なビーストまで、最もクールで速い車とカーレースできます。スティックシフトをマスターし、ニトロを賢く使って競争を打ち破る必要があります。このカーレースゲームはそのリアルな物理学と素晴らしいグラフィックスであなたの心を爆発させます。これまでプレイしたことのないようなものです。 GT Nitroは、リフレックスとタイミングを試すカーレースゲームです。正しい瞬間にギアをシフトし、ガスを思い切り踏む必要があります。また、大物たちと競いつつ、車のチューニングとアップグレードも行わなければなりません。世界中で最高のドライバーと車とカーレースに挑むことになり、ドラッグレースの王冠

    GT Nitro: カーレーシング・ドラッグレーシングゲーム - Google Play のアプリ
    tyru
    tyru 2009/04/30
  • C/C++ セキュアコーディングセミナー資料 | JPCERT コーディネーションセンター

    これまでにC/C++ セキュアコーディングセミナーで使用した講義資料を公開しています。2010年度にセミナを実施した、文字列、整数、動的メモリ管理、書式指定文字列、CERT C セキュアコーディングスタンダード、ROSE については、それぞれ最新版の資料を掲載しています。 文字列 ユーザとソフトウエア間に発生するデータのやりとりの大部分は文字列によって行われます。 また、プログラム間でのデータ交換も文字列形式で行われるようになり、その結果、文字列表現や文字列管理、文字列操作における弱点がソフトウエア脆弱性を生み出しています。 文字列では、C/C++ 言語における文字列操作、一般的なセキュリティ上の欠陥と、その結果発生する脆弱性と対処方法について解説します。 C/C++ における文字列の特性 犯しやすい文字列操作の間違い 文字列の脆弱性 プロセスのメモリ構成 スタック破壊の仕組み コードイン

    C/C++ セキュアコーディングセミナー資料 | JPCERT コーディネーションセンター
  • 型レベルプログラミングの会 - kmizuの日記

    型レベルプログラミングの会、略して型レ会、行って来ました。メモとか取ってなかったので詳細な感想は書けないのですが、とにかく濃い話が盛りだくさんで面白かったです。このように魅力的なイベントを主催していただいたk.inabaさん、魅力的な発表をしてくださった皆様、会場を提供してくださったサイボウズラボの光成さんに感謝です。 C++の可変引数テンプレートの便利さに舌を巻いたり Haskellの関数従属とか使った型レベルプログラミングの方法にうなったり Haskellのtype familyほげほげの話がよくわからなくなってorzしたり いけがみさんの発表を聴いて428を買いに行きたくなったり Dのテンプレートメタプログラミングの自由さ&読みやすさに感動したり G'Camlのgeneric関数のシグネチャの読み方がなかなかわからなくてうなったり 初めて聞く話とか、話は聞いたことあるけど実際にどんな

    型レベルプログラミングの会 - kmizuの日記
  • VC++ CriticalSectionの速度 / Tips / Cycle of 5th

    排他的制御をしたい時に使うのがこのCiriticalSection(クリティカルセクション)。具体的にいつ使うのかというと、マルチスレッド処理などをしている時に、同時にアクセスされるとまずい部分がある場合の時に使う。 例えば、2つのスレッドがあった時、スレッド1で配列のサイズを変更しスレッド2で同じ配列のある場所を読み込む場合、配列サイズ変更中などにアクセスするとアクセス違反が発生しプログラムが落ちることもある。 WindowsでこのCriticalSectionを使う時は、InitializeCriticalSection、EnterCriticalSection、LeaveCriticalSection、DeleteCriticalSectionという関数及びCRITICAL_SECTIONという構造体を利用する。具体的使い方などは、MSDNなどで調べてもらうとして、今回はこれを使った

  • NVIDIA、並列コンピューティング技術「OpenCL」のドライバとSDKを開発者向けに提供 | OSDN Magazine

    米NVIDIAは2009年4月20日(米国時間)、クロスプラットフォーム対応の並列プログラミング標準規格「OpenCL」(Open Computing Language)のドライバとSDKを、開発者向けに提供すると発表した。同社の「OpenCLアーリー・アクセス・プログラム」に参加することで、入手できる。 「OpenCL」は、マルチコアCPUGPU、DSPなど異なるアーキテクチャのプロセッサで構成される計算リソースで並列コンピューティングを行うためのフレームワーク。C言語をベースに、拡張のAPIを追加している。グラフィックス標準化推進団体のKhronosが標準化して、2008年12月に「OpenCL 1.0」を発表。2009年中に実装が進むと期待されている。 ドライバとSDKの提供は、数カ月後に発表予定のベータ版に先立ち、早めのフィードバックを得ることを目的として行う。アーリー・アクセス

    NVIDIA、並列コンピューティング技術「OpenCL」のドライバとSDKを開発者向けに提供 | OSDN Magazine
  • C言語の文法「宣言は置換規則」 - 簡潔なQ

    最近思うんだけれど、C言語の文法って 「宣言は置換規則」 っていう発想がところどころみられるよね。 たとえば、古いK&Rの関数定義なら #include <stdio.h> /* funcの定義 */ char func(x,y) int x; double y; { return 'B'; } /* funcの利用 */ main() { int x; /* xはintに置換される */ double y; /* yはdoubleに置換される */ x = 1; y = 2.0; printf("%c", func(x,y)); /* func(x,y)がcharに置換される、と考えることもできる */ } それから、悪名高いポインタと配列の定義。 #include <stdio.h> #include <string.h> int main() { int ary[10]; /* なぜ

    C言語の文法「宣言は置換規則」 - 簡潔なQ
  • 関数ポインタを返す関数 - 素人がプログラミングを勉強していたブログ

    [09/04/21 23:17:19] qnighy/Acike: C言語で [09/04/21 23:17:31] qnighy/Acike: 関数ポインタを返す関数って [09/04/21 23:17:40] qnighy/Acike: どうやって宣言すればいいのかわからない [09/04/21 23:18:23] daiki chijiwa: っvoid * [09/04/21 23:18:38] qnighy/Acike: とりあえず、typedefとかvoid*とかはなしで [09/04/21 23:19:18] qnighy/Acike: 関数ポインタの型宣言を関数の戻り値にたいして行う書き方をしりたい [09/04/21 23:21:49] 糸柳: typedef 無しでできるのかな[09/04/21 23:29:22] つっくん(javascripter):int f()

    関数ポインタを返す関数 - 素人がプログラミングを勉強していたブログ
  • iostream の状態について - IT戦記

    書いとかないと忘れそうなのでメモ gcc の basic_ios は以下のような operator void* と operator! を持っているので //@{ /** * @brief The quick-and-easy status check. * * This allows you to write constructs such as * "if (!a_stream) ..." and "while (a_stream) ..." */ operator void*() const { return this->fail() ? 0 : const_cast<basic_ios*>(this); } bool operator!() const { return this->fail(); } //@} 以下のように if (in.read(buf, size)) // o

    iostream の状態について - IT戦記
    tyru
    tyru 2009/04/20
  • お探しのページが見つかりません。404 File Not Found : XLsoft エクセルソフト

    お探しのページは一時的にアクセスできない状況にあるか、移動もしくは削除された可能性があります。 リンクが切れている場合は、こちらのお問い合わせフォームよりご連絡ください。