Article View: de.comp.lang.c++
Article #496STL - ueber's Ziel hinaus ?
From: Alexander Ehrler
Date: Sun, 01 Oct 1995 11:59
Date: Sun, 01 Oct 1995 11:59
57 lines
2044 bytes
2044 bytes
Moinmoin,
Ich habe gestern die HP Version der STL ausprobiert und siehe da:
...
vector< my_type > v(10);
cout << v[100];
...
keine Exception, keine "failed assertion", einfach ein satter Absturz.
Aber das muss ja schliesslich so sein, denn (aus der Doku):
"...just as regular pointers to an array guarantees that there is a pointer
value pointing past the last element of the array, so for any iterator type
there is an iterator value that points past the last element of a corresponding
container..."
Tatsachlich ist der Subskript-Operator so implementiert:
vector::operator[](size_type n)
{
return *(begin() + n);
}
wobei begin() einen Iterator liefert. Keine bound checks.
Wenn ich das jetzt richtig verstanden habe, sollen die Iteratoren der STL
normale C-Pointer simulieren. Und eben auch deren Verhalten bei bound
violations (-> crash). Also alte Probleme in neuer Gestalt.
Gibt es irgendeinen Grund dafรผr ? Braucht jemand dieses Pointer-konforme
Verhalten (mit allen Konsequenzen) ?
Eigentlich koennte mir das egal sein, wenn die STL nicht als Container-Teil
des neuen ISO C++ Standards vorgesehen wรคre. Oder soll in der ISO Library eine
"sicherere" STL Version aufgenommen werden ?
Neugierig,
Alex
--
,,,,, Alex Ehrler * University of Karlsruhe * Computer Science
( 0 @ ) Loetzenerstr. 18 * D - 76139 Karlsruhe * Germany
--oOO--(_)--OOo-- email: ukci@rz.uni-karlsruhe.de * phone: (0721)681609
Technical Details
Message-ID:
<44lvrp$a25@nz12.rz.uni-karlsruhe.de>Path:
arc1-ca.pugleaf.net!rzstud1.rz.uni-karlsruhe.de!ukciShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!rzstud1.rz.uni-karlsruhe.de!ukci From: ukci@rzstud1.rz.uni-karlsruhe.de (Alexander Ehrler) Newsgroups: de.comp.lang.c++ Subject: STL - ueber's Ziel hinaus ? Date: 1 Oct 1995 11:59:53 GMT Organization: University of Karlsruhe, Germany Message-ID: <44lvrp$a25@nz12.rz.uni-karlsruhe.de> NNTP-Posting-Host: rzstud1.rz.uni-karlsruhe.de Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit NNTP-Posting-User: ukci X-Newsreader: TIN [version 1.2 PL2]