このブラウザ バージョンのサポートは終了しました。サポートされているブラウザにアップグレードしてください。
(2016/02/10 追記: EASTL は長らく EAWebKit の一部としてライセンスが不明瞭なまま公開されていましたが、この日 BSD ライセンスで正式に公開されました https://github.com/electronicarts/EASTL) 若干古いものですが、2007 年に発表された、Electronic Arts によるゲーム開発向けの改良を加えた STL、"EASTL" の仕様。 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2271.html 仕様だけで実装が公開されてないのが非常に残念なのですが、それは別として、何故こんなものが必要なのか、どういう事情でこの機能が盛り込まれたのか、といったゲーム開発現場の事情が細かく解説されていて、とても参考になります。特に、既にある程度 C++ に習熟してい
この記事が公開される頃にはVisual Studio 2010のパッケージ販売が始まっているでしょうか。MSDN Subscriptionでは先行提供されていますし、各言語のExpress版が公開されていますから、初物(?)の好きなミナサマは早速遊んでいらっしゃることと思います。 C++屋の僕にとって一番嬉しかったのはVisual C++ 2010(vc10)でC++0xに(完全ではないにせよ)準拠してくれたこと。特にlambda式にはドキドキさせられました。lambda式のサポートにより、より明快でコンパクトな表現が可能になりました。正規表現(regex)や配列(array)、賢いポインタ(shared_ptr/weak_ptr)などなど、サポートが待ち望まれていたクラス群が追加されています。本稿ではvc10で新たに追加されたSTLアルゴリズムを一気に紹介します。 以降、プロトタイプと説
みなさんこんにちは 今までAndroid NDKを使用してAndroidアプリをC言語やC++で開発できることを紹介してきました。ここではもう一歩踏み込み、C++のSTLが使用できるか試してみたいと思います。 STLについては以下を参考にしてください。 http://ja.wikipedia.org/wiki/Standard_Template_Library 今回はSTLportを使用したいと思います。Android用にカスタマイズされたSTLportが開発されたためです。これは標準のSTLに比べ効率的で、スレッドセーフで標準には含まれていないハッシュマップなども使用できます。 ではいってみましょう。 以下の手順です。 1、gitをインストール tarポールには現時点ではandroidに対応したものが含まれていないのでgitでインストールします。そのうちtarポールにも入っているよ
Visual C++ Team Blog - STL Breaking Changes in Visual Studio 2010 Beta 1 VC++10では、STLに破壊的な変更が行われるそうです。 (C++0xには関係ない変更。Microsoftが破壊的な変更なんてめずらしい…。) 以下のコードは、VC++9 SP1まではコンパイルが通りますが、VC++10ではエラーになります。 #include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> v; v.push_back(3); v.push_back(1); v.push_back(4); copy(v.begin(), v.end(), ostream_iterator<int>(c
STLFilt: An STL Error Message Decryptor for C++ Open Source Freeware by Leor Zolman, Supporting: Comeau C++ gcc 2.95.x/3.x/4.x (Dev-C++ compatible) MSVC++ 6/7/8/9 (incl. Dinkum Libraries) Metrowerks CodeWarrior Pro 7/8 Borland C++ / C++Builder Intel C++ 7/8 EDG Front End (Generic) Digital Mars C++ Please Note: Active Development on STLFilt has ended. The author sincerely hopes the C++ Standards Co
C++ の string と vector の reserve() の挙動 C++ の string と vector には前もって容量を確保するための reserve() というメンバ関数があります。何気なく使っていた関数ですが最近になって興味深い挙動に気づきました。 reserve() の基本 string と vector の reserve() は前もって容量 (capacity) を確保しておくためのメンバ関数です。前もって容量を確保 (reserve) しておけば、データの追加時に発生する再割り当て (reallocation) を防ぐことができ、効率的です。 たとえば、何もしないで文字列に 1,000文字追加した場合、(内部的に倍々で容量を増やしていくため)10回程度の再割り当てが発生しますが、 s.reserve(1000) のように容量を確保しておけば 1回の割り当て (
やらなきゃいけない仕事があるときに限って非常に面白いドキュメントを発見してしまうの法則.http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2271.html 何も提案してない paper だけどこれ読み物としてすげー面白いじゃん.ゲーム開発のかの字も知らない俺 (でも「ゲ」と「ー」と「ム」の字は知っている俺) でも,何が問題なのかが整理されていて非常に興味を惹かれる.いや,ゲーム開発を知らないからこそ得るものが大きいのか.ゲーム開発という立場から STL に批評加えるという立ち位置が固定されているにもかかわらず,そのゲーム開発に関するあらゆる角度から徹底的に争点と問題点を洗い出しているこの paper は,今まで自分が見聞きしてきた STL 批評の中でも群を抜いた出来ではないかと思う.うーん,やっぱすごいところにはすごい人たち
EASTL -- Electronic Arts Standard Template Library Paul Pedriana Electronic Arts ppedriana at ea.com Abstract Gaming platforms and game designs place requirements on game software which differ from requirements of other platforms. Most significantly, game software requires large amounts of memory but has a limited amount to work with. Gaming software is also faced with other limitations such as we
1985年、AT&TのBjarne StroustrupがC++をこの世に送り出しました。その後C++は様々な拡張を繰り返しながら進化してきました。 1991年、ISOはC++の国際標準(standard C++)を定める作業を開始しました。標準C++の最終草案は1997年にISO C++標準化委員会に承認されました。 標準C++が規定するのは言語仕様だけなく、C++標準ライブラリも規格の中で明確に定められています。それまでC++のライブラリといえばiostreamぐらいのものでしたし、それもあくまで"事実上の標準"でしかありませんでした。 そしてそのC++標準ライブラリの一部として組み入れられたのがSTL(Standard Template Library)です。すなわちSTLは標準C++の仕様の一部ということです。 僕がSTLを知ったのは1995年、いくつかのコンパイラがtemplat
あったあった. When you link a multithreaded application, you will probably need to add a library or flag to g++. This is a very non-standardized area of GCC across ports. Some ports support a special flag (the spelling isn't even standardized yet) to add all required macros to a compilation (if any such flags are required then you must provide the flag for all compilations not just linking) and link-lib
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く