タグ

c++に関するgam-22のブックマーク (13)

  • ISUCON6予選をC++で参加して予選通過した話

    チーム名「Anago」で @iwiwi, @zuisou, @imos の 3 人で ISUCON6 予選に参加し,幸運にも 1 日目 3 位で通過することができました.@iwiwi が「ISUCON に C++ で参加したい!」と言っており,それを全力バックアップをしようと思ったのがきっかけの参加でした. 前日までにやったこと C++ で全てを書けば最速になるのは自明なのですが,C++ は参考実装として与えられていないだけではなく,HTTP サーバを書くことを想定していない言語のため準備には苦労しました. C++ で HTTP サーバを書く方法は,既存の Web サーバ (e.g., nginx, Apache, H2O) のプラグインを書いて実装するか,FastCGI として実装するか,フルスクラッチで書くかの選択肢が考えられますが,プロセス間通信を避けて爆速にしたかったので,事前に

  • getting "index" of set element via iterator

    gam-22
    gam-22 2016/04/10
    “std::distance(set.begin(), find_result)”
  • Altseed2 | Altseed2

    Altseed2とは Altseed2 は画面描画・音・入力・衝突判定などの機能をまとめたゲーム用ライブラリです。 オブジェクト指向を用いた開発に適したインタフェースにより、複雑になりがちな機能を少ないコード量で実装することができます。 かつての Altseed と異なり、ノードシステムを採用しており、オブジェクトやオブジェクトが持つ機能の管理を、より柔軟かつ統一的に行うことができます。 その他にも、Altseed2 には初代 Altseed にはなかった機能がいくつか実装されています。 Altseed2は初代Altseedとの互換性はなく、新しく作り直されたゲームエンジンです。初代Altseedの情報を見たい方はAltseedのページをご覧ください。 ページ チュートリアル : プログラミング初心者向けに、Altseed2 を使ってシューティングゲームを実装するコースを用意してあります。

    Altseed2 | Altseed2
    gam-22
    gam-22 2015/07/14
    筑波大学のサークルが開発したゲームエンジン
  • スクールガールストライカーズの 内製クライアントエンジン

    近年、ハイスペックなスマートフォン、高品質なネットワークが普及し、それによりモバイルゲームの制作手法やそれを取り巻く環境も変化してきました。スクウェア・エニックスでは、そのような環境の変化に対して、日々新たなチャレンジをし続けています。そして、このようなスピード感溢れる業界の流れには、会社の枠を超えた技術情報の共有、交流が欠かせないと感じております。 そこでこの夏、社内のエンジニア・テクニカルディレクターによる最新のモバイル開発の技術情報や社内モバイルエンジン、開発秘話によるセッションをメインに、スクウェア・エニックス モバイル オープンカンファレンスを開催する運びとなりました。また、セッションの後は登壇する弊社スタッフと直接ディスカッションやフリートークができる場を設けております。この機会にスクウェア・エニックスという会社についても、より詳しく知って頂ければ幸いです。 マネージャー・テク

    gam-22
    gam-22 2014/07/17
    "CPU様に対して人間都合の不純物を残さない"
  • UnrealEngineが5日間でasm.js化できたと聞いた俺たちは…

    12. 当然一筋縄ではいかない (`ェ´)ピャー abort() at Error at stackTrace (/.../playground/Engine/porting/emscripten/p.js:1032:15) at abort (/.../playground/Engine/porting/emscripten/p.js:289649:25) at nullFunc_viiiiii (/.../playground/Engine/porting/emscripten/p.js:8235:1574) at Array.b978 [as 0] (/playground/Engine/porting/emscripten/p.js:287407:99) at Object._main (/.../playground/Engine/porting/emscripten/p.js

    UnrealEngineが5日間でasm.js化できたと聞いた俺たちは…
  • ドワンゴに入社した

    そう。タイトル通りだ。筆者、江添亮はドワンゴに雇用された。一体、どのような経緯でドワンゴに入社するに至ったのか。また、どんな仕事をしているのか。それを説明するには、時系列を追って書いたほうがいいだろう。 2013年8月21日 ふとみると、以下のようなサブジェクトのメールが届いていた。 【ご相談】ドワンゴ主催の C++11, 14 に関する勉強会にスピーカーとしてご参加頂けないでしょうか C++11? C++14? なんと、日C++14などという単語を知っている企業があったのか。しかし・・・ドワンゴ? SPAMだろうか。いや、こんなにピンポイントなSPAMがあるわけがない。 それにしても解せないメールだ。ドワンゴといえば、もちろん、あの有名なニコニコ動画の企業だ。ニコニコ動画と言えばWebサイトだ。ニコニコ動画やその関連サービスの開発にC++を使っているのだろうか。いやまて、たしか子会社

  • 【結果発表】新人女子PGを最も助けたプログラミング言語とは? - paiza times

    2013年12月2日より開始したpaizaオンラインハッカソン(略してPOH![ポー!])Vol.1「新人女子の書いたコードを直すだけの簡単なお仕事です!」ですが、2014年1月8日いっぱいをもって開催期間を終了いたしました。今回のハッカソンのレポート、最終結果と、提出された各プログラミング言語毎の最速コードをお届けします。 ※POH Vol.1は応募期間は過ぎたため、プレゼント対象、計測対象には成りませんが、コードの実行は引き続き可能です。 ■提出コードは2万提出突破! おかげ様で事務局の想定を超える参加者数、提出数のハッカソンとする事ができました。ご参加いただいた皆様ありがとうございました! 今回の期間中の参加者数、提出数は以下の通りです。 参加者数:1,961人 提出数:22,219提出 今回の企画では、オンラインで誰でも気軽に参加できるハッカソンを目指しました。改めてプログラミング

    【結果発表】新人女子PGを最も助けたプログラミング言語とは? - paiza times
    gam-22
    gam-22 2014/01/17
    高速なコードを書くためにはこういう禍々しいことをしないとダメなのか...特にC#がヤバイ
  • Rust (プログラミング言語) - Wikipedia

    Rust(ラスト)は、性能、メモリ安全性、安全な並行性を目指して設計されたマルチパラダイムのプログラミング言語である。C言語、C++に代わるシステムプログラミング言語を目指しており[2]、構文的にはC++に似ているが[3]、「ボローチェッカー」(borrow checker) で参照の有効性を検証することによってメモリ安全性を保証できる。Rustはガベージコレクションなしでのメモリ安全性を達成しており、必要な場面で参照カウントを使うこともできる[4][5] 。 Rustプロジェクトはオープンソースのコミュニティベース開発で進行しており[6]、言語仕様(検討段階含む)、ソースコード、ドキュメントはオープンソースライセンスで公開されている[7]。2006年の開発初期は、Mozillaの従業員のグレイドン・ホアレ(Graydon Hoare)[8]の個人プロジェクトだったが、2009年にMozi

    Rust (プログラミング言語) - Wikipedia
    gam-22
    gam-22 2013/12/12
    #tsukubarb
  • Cプリプロセッサ(with Boost.PP)で簡単な言語処理系を実装しよう - ここは匣

    この記事は、C++ (fork) Advent Calendar 2013の10日目の記事です。 はじめに 12月に入って10日目、もう中旬ですね。 連日C++に関するハイレベルな記事が目白押しで消化不良になってきている方々も居らっしゃると思いますので少し趣を変えて息抜きみたいな記事にしようと思います。 実行時処理やコンパイル時処理(TMP, constexpr)は並列処理の実装やコンパイル時言語処理系など他の方々が既に強烈なネタを披露してくれていますし、自分も前回主催した勉強会でそこそこTMPのネタを放出してしまったので、 今回はC++コードをコンパイル前に処理する段階、プリプロセス時の言語とその処理系であるCプリプロセッサに関するネタでいきたいと思います。 TMPに関するネタは前回の概ね前回自分主催の勉強会の資料 にまとまっているので興味のある方はこちらも読んでいただければ幸いです。

    Cプリプロセッサ(with Boost.PP)で簡単な言語処理系を実装しよう - ここは匣
  • 2進数リテラルが欲しいときのまとめ - nyanp::blog

    たとえば組み込みで,2進数っぽい文法で数値を扱いたいときがある.ドットマトリクスに顔文字アイコンを表示させるときに set_icon_data( 0x0a, // 1 1 0x0a, // 1 1 0x00, // 0x11, // 1 1 0x0e // 111 ); みたいにベタ書きなのはあまりにも悲しい.顔文字をコードで直接記述したい!でもC/C++は2進表記を直接サポートしない.じゃあどうするか. コンパイラの拡張構文を使う コンパイラによっては"0b00100000"みたいなリテラルで2進数を扱える場合もある.4.3以降のgccでもそう. set_icon_data( 0b01010, 0b01010, 0b00000, 0b10001, 0b01110 ); マクロでbinary literal風事前定義 2進数表記のようなマクロを事前に定義しておく.数が多いなら機械的に生成し

    2進数リテラルが欲しいときのまとめ - nyanp::blog
  • Ruby用拡張ライブラリをCで作る

    Ruby用拡張ライブラリをCで作る Rubyは、C(あるいはC++)で書いたコードを動的(あるいは静的)にリンクして利用する事ができる。うまく使えば、Rubyで書くより高速な動作が期待できる。 たとえば、GUIライブラリである「Ruby/GTK」は、描画部分にCで書かれたライブラリを利用する事で、実用的な画面描画速度を確保している。 その、Ruby用拡張ライブラリをCで書く方法である。 ■ 拡張ライブラリ作成の流れ Rubyはオブジェクト指向言語である。オブジェクト指向言語におけるプログラムとは、基的にクラス定義である(と、少なくとも私は思っている)。そこで、ここではクラス定義に話を絞る。 メソッドの実体となる関数を定義する Init関数を作る rb_define_classで、新しいクラスを作る rb_define_methodで、クラスに1で作成したメソッドを追加する Makefil

  • How to read until EOF from cin in C++

    gam-22
    gam-22 2013/04/18
    C++難しい
  • Windows 8のC++でプログラミングの常識がひっくり返った

    「C言語とC++がわかる」というムック(2013年4月2日発売)の作業で、Windows 8/RTで動く「Windowsストア アプリ」をC++で作った。元記事はVisual BasicとC#(シーシャープ)で作っていたので、それをC++で書き直すというわけだ。 これが想像をはるかに超えて難しく、土日に働き続けるのはもちろんのこと、1日の睡眠時間を2時間に削ったりして長時間取り組んでも、思うように進まなかった。印刷会社にデータを渡す日は近付くしプログラムは動かないしで、10年に1度クラスの大ピンチ。冷や汗をかき、涙目になりながら書き続けて何とか間に合わせたのだが、どこが最大の難所だったかというと、「順次処理を書いたつもりなのに順次処理してくれない」という、常識破りの大変化があったことだと思う。 手続き型のプログラミング言語でプログラムを書く場合、プログラマが と記述したら、コンピュータは

    Windows 8のC++でプログラミングの常識がひっくり返った
  • 1