TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

EA open sources their internal version of STL

89 点作者 seekely超过 14 年前

6 条评论

ukdm超过 14 年前
Source: <a href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2271.html" rel="nofollow">http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n227...</a><p>Differences between std STL and EASTL<p>First, EASTL provides a set of containers, iterators, and algorithms that are identical in interface and behavior to std STL versions with one exception: allocators. EASTL has a different allocator specification which is simpler, more efficient, more flexible, and easier to use than std::allocator. Both std::allocator and eastl::allocator are described below. EASTL follows the defect reports and TR1 as well. EASTL additionally provides and uses some of the TR1 functionality as well, including most significantly the smart pointers, type traits, and hashing containers.<p>Second, EASTL provides extension functionality to the above containers, iterators, and algorithms. An example of this is the push_back(void), set_capacity(size), and validate() functions added to eastl::vector. The majority of these extensions are driven by the need for higher performance (push_back(void)), higher clarity (set_capacity), or higher debuggability (validate()). There are about 30 such extensions to the various entities in the library. These are described in detail below.<p>Third, EASTL provides additional containers and algorithms that don't correspond to std STL. These include intrusive_list, vector_map, fixed_hash_set, slist, ring_buffer, radix_sort, has_trivial_relocate, and others. These are described in detail below.<p>There are additional differences not related to the functional specification. They include a programming philosophy that emphasizes readability, consistency, and optimal performance on limited hardware.
评论 #1833042 未加载
jrockway超过 14 年前
This is why game companies use C++. They've already reimplemented it internally and don't ever want to do that again.
评论 #1833036 未加载
评论 #1831747 未加载
评论 #1831538 未加载
Keyframe超过 14 年前
<a href="http://news.ycombinator.com/item?id=1798215" rel="nofollow">http://news.ycombinator.com/item?id=1798215</a> - barrybe set up that github.<p>Here are first rough benchmarks: <a href="http://msinilo.pl/blog/?p=668" rel="nofollow">http://msinilo.pl/blog/?p=668</a>
bhickey超过 14 年前
Why the heck are they hosting it at <a href="http://gpl.ea.com" rel="nofollow">http://gpl.ea.com</a> when they've released the code under the 3-clause BSD license?
w1ntermute超过 14 年前
What's their reason for open sourcing it?
评论 #1832961 未加载
axus超过 14 年前
E. A. STL. It's in the game.<p>But don't say it like that, it's against the license ;p