Hi Pete, I don't think that this is intentional. The change was made (incorrectly!) to improve speed without changing behavior. Do you know of a better solution (than returning to the loop)? Cheers, Philippe. -----Original Message----- From: owner-roottalk@pcroot.cern.ch [mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Peter Elmer Sent: Friday, April 02, 2004 6:07 AM To: roottalk@pcroot.cern.ch Subject: [ROOT] TArrayI::Reset() implementation change Hi Rene, I see that between ROOT 3.10-01 and 3.10-02, the following change was made to TArrayI::Reset(...): < // @(#)root/cont:$Name: $:$Id: TArrayI.h,v 1.14 2002/10/30 20:39:50 brun Exp $ --- > // @(#)root/cont:$Name: $:$Id: TArrayI.h,v 1.16 2003/11/14 11:17:13 brun Exp $ 44c44 < void Copy(TArrayI &array) const {array.Set(fN); for (Int_t i=0;i<fN;i++) array.fArray[i] = fArray[i];} --- > void Copy(TArrayI &array) const {array.Set(fN,fArray);} 48,49c48 < void Reset() {memset(fArray, 0, fN*sizeof(Int_t));} < void Reset(Int_t val) {for (Int_t i=0;i<fN;i++) fArray[i] = val;} --- > void Reset(Int_t val=0) {memset(fArray,val, fN*sizeof(Int_t));} For values of val other than 0, I think this actually changes the implementation since memset (IIRC) fills the array >byte-by-byte< with the value "val" (and not array-index by array-index). Was that change intentional? (We were relying on the original implementation in some of our code.) thanks, Pete ------------------------------------------------------------------------- Peter Elmer E-mail: Peter.Elmer@cern.ch Phone: +41 (22) 767-4644 Address: CERN Division PPE, Bat. 32 2C-14, CH-1211 Geneva 23, Switzerland ------------------------------------------------------------------------- ################################################################# ################################################################# ################################################################# ##### ##### ##### ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ################################################################# ##### ##### ##### ################################################################# ################################################################# #################################################################
This archive was generated by hypermail 2b29 : Sun Jan 02 2005 - 05:50:07 MET