STL: What's New
What's New
Release 3.3: June 8, 2000
New feature: concept checks. The library now does better compile-time
error checking to make sure that the types used to instantiate
library templates conform to the templates' requirements.
Removed two non-standard-conforming extensions: the second, defaulted
template parameter in bitset, and the third, default template
parameter in deque.
Many bug fixes, performance enhancements, and compatibility improvements.
Release 3.2: April 22, 1999
New feature: <valarray> header,
as defined in section 26.3 of the C++ standard.
<limits> header is now supported
on compilers that lack support for constant initialization of
static const data members, such as Microsoft v6.0.
Performance improvements in copy for compilers that
lack support for partial specialization of templates.
Improved support for insert_iterator when used with
hash tables and slist.
Documentation bug fix: documentation now makes it clear which
library features are standard and which are SGI extensions.
Bug fixes.
Release 3.13: March 11, 1999
Added a Frequently Asked Questions list.
Bug fixes, particularly in multithreading support for non-SGI compilers.
The at member function is now supported for the vector
and deque classes. (It was previously supported only for
string.)
Release 3.12: February 2, 1999
Minor bug fixes.
The <string> and
<bitset> headers are now supported on
compilers that lack full support for member templates and partial
specialization, such as Microsoft v6.0.
Code to support multithreading has been consolidated in a single
file, so that system dependences are better isolated.
Release 3.11: July 21, 1998
Minor bug fixes.
Faster operator[] in map.
Algorithmic improvements in find,
find_if, and partition.
The standard exception hierarchy is
now usable on compilers that do not provide an
<exception> header.
Release 3.1: June 9, 1998
This release provides several new features.
Standard-conforming string and
bitset classes, and the
standard exception hierarchy.
Standard-conforming allocators, including the default allocator
class allocator<T>. All containers now use
standard allocators, and all containers now support allocators
whose instances are distinct. Old-style allocators, like alloc,
are still supported for backward compatibility.
Algorithmic improvements in search.
All sequences now support the resize and assign
member functions. All sequences now properly support overloaded
insert member functions and constructors in the presence
of member templates.
Bug fixes in rope, and minor bug fixes elsewhere.
Minor changes for standard conformance.
Standard-conforming auto_ptr class.
Internal names, such as names of function and template
parameters, have been changed so that they cannot conflict with
user names (including user macros).
Release 3.01: October 31, 1997
This is a minor release. It consists only of bug fixes (the most
important ones are in rope), small changes to reflect
changes in the Final Draft International Standard (FDIS), and
performance improvements in single-element insertion into containers.
Release 3.0: October 31, 1997
Major reorganization of header files. Headers now have the names
described in the draft C++ standard. (Old header names are
provided as well for backward compatibility.) The new-style
headers declare their contents in namespace std; the
old-style headers do too, but they import those declarations into
the global namespace with using declarations. So, for example,
#include <vector.h> is roughly equivalent to
#include <vector> followed by the declaration
using std::vector;.
Note that namespace std is only enabled for compilers
whose support for namespaces is sufficient; this is controlled by
the header <stl_config.h>.
Bug fixes, and minor changes for standard conformance.
Release 2.03: September 9, 1997
Bug fixes, most importantly in rope.
New version of reverse_iterator that takes only a single
template parameter, as described in the draft standard. (This
relies on iterator_traits, so you can only use
the new version of reverse_iterator if your compiler
supports partial specialization.)
New algorithms: find_first_of,
search_n, find_end
Changed the iterator tag classes so that they form an
inheritance hierarchy.
Added the -> operator to all predefined iterators
(except for output iterators).
Release 2.02: July 31, 1997
Bug fixes, most importantly in
rope and
deque.
New feature: function object adaptors for member functions.
This is a family of classes:
mem_fun_t,
mem_fun_ref_t,
mem_fun1_t,
mem_fun1_ref_t.
Release 2.01: June 30, 1997
Bug fixes only, no new features.
Release 2.0: June 13, 1997
This is a major release, with many new features. Here are some of the
most important.
Exception safety. All STL components are now exception safe.
New container class: rope. A scalable
string representation.
New container class: slist. Singly
linked lists.
Member templates. If your compiler supports member templates,
then you will be able to use the fully general form of containers'
copy constructors and insert member functions.
New mechanism for accessing iterators'
associated type information: iterator_traits.
(Note: you can only use iterator_traits
if your compiler supports "partial specialization".)
The algorithms
count, count_if,
and distance have been rewritten in
terms of iterator_traits.
Reimplementation of deque.
deque has been completely rewritten,
for higher performance.
type_traits mechanism, which allows omission of null
constructor and destructor calls.
New temporary_buffer
class. This was partially motivated by exception safety, but it
is also more convenient and more efficient than the old
get_temporary_buffer
and return_temporary_buffer
functions.
New allocator, debug_alloc, which is useful for verifying
the correctness of memory allocation and deallocation.
New algorithms:
copy_n,
lexicographical_compare_3way,
power,
uninitialized_copy_n.
Greater portability. The SGI STL can now be compiled using
Microsoft Visual C++ 5.0, and Borland C++ 5.02; it should not be
difficult to port it to any other compiler that has good support
for templates. (Specifically, any compiler that has default template
parameters.) Most compiler-specific code is isolated in the file
stl_config.h.
Copyright ©
1999 Silicon Graphics, Inc. All Rights Reserved.
TrademarkInformation
Wyszukiwarka
Podobne podstrony:
whats newWhats New in HSC 51whats new?se concepts?82E7F0whats new?14E799whats new rup?40353B06 Whats New in HSC 5whats new informal resources?EBAE0Cnew 4Twilight Saga New Moon 2009 CAM XviD POISONBESM New Attributes & Defects 2 0WentyleSmayNP110 newnew?atures 1 1conceive new project?5322C0Zagrożenie Współczesnego Człowieka Ruch New AgeWentyleSmayPJAU newnew pagewięcej podobnych podstron