valarray (slice_array) problem oder gcc problem, oder noch nicht korrigierter stroustrup fehler?
-
Also meiner bescheidenen Meinung nach ist da was total kaputt.
Oder dieser ganze valarray-Kram lässt sich schlicht nicht mit reinem C++ implementieren.
-
der Standard sagt nicht, dass slice_array keine friends haben darf. beim gcc sieht der private-Teil von slice_array so aus:
private: friend class valarray<_T>; slice_array(_Array<_T>, const slice&); const size_t _M_sz; const size_t _M_stride; const _Array<_T> _M_array; // this constructor is implemented since we need to return a value. slice_array (const slice_array&); // not implemented slice_array (); slice_array& operator= (const slice_array&);
(wie die Standardleute sich das ohne implementierten copy-ctor gedacht haben ist eine andere Frage)
ok dann hat sich das wohl erledigt
-
z.b. gcc 3.3 implementierung:
// This constructor is implemented since we need to return a value. slice_array(const slice_array&); friend class valarray<_Tp>; slice_array(_Array<_Tp>, const slice&);
wo steht, das slice_array keine freunde haben darf?
im standard steht dabei: remainder implementation defined. das reicht dohc, nicht
-
der Standard sagt nicht, dass slice_array keine friends haben darf.
wo steht, das slice_array keine freunde haben darf?
Jaja. Ihr habt recht. Es ist spät und ich bin der Antifrosch wenn's ums Lesen und verstehen des Holy-Standards geht.
-
aber mit dem copy ctor hattet ihr recht
-
*** blubb *** spätnachts kann man die Augen nicht mehr so gut offenhalten
-
vergiss die anderen Frauen, die bleiben alle auf der Strecke.
-
vielleicht einfach mal bei comp.std.c++ nachfragen, was die da so denken?
-
Na gut, mal Zeit, mich wieder zu melden. Wen es noch interessiert:
Im Defekt Report steht was
und Mr. Stroustrup meint, dass er den Fehler solange nicht korrigieren will, bis das Standardkomittee das mit valarray löst.
-
Helium schrieb:
vielleicht einfach mal bei comp.std.c++ nachfragen, was die da so denken?
ich nehme an, die duerften eine aehnliche meinung wie josuttis haben: valarray ist (bei den momentanen vorgaben) sinnlos.
ich nehme aber an, dass in C++0x valarray mittels expression templates implementiert werden wird (so dass valarray endlich das kann, was es koennen soll) - wenn die zeit gereicht haette, waere das ja schon bei C++98 passiert.