Richter page 275:
// Clear the StringBuilder (allocates a new Char array).
sb.Length = 0;
Huh?
Jim
>>> [EMAIL PROTECTED] 05/09/02 11:32AM >>>
I'll probably get into trouble here, but if Richter said that, I think he
was mistaken. Setting Length = 0 is special-cased. It sets the
StringBuilder's internal string's length to zero (via a sneaky
assembly-protected method on String), but a new character buffer is not
created.
I haven't tested it against Remove(), but I suspect it might be quicker.
Jim
> -----Original Message-----
> From: Jim Graf [mailto:[EMAIL PROTECTED]]
> Sent: 09 May 2002 15:51
> To: [EMAIL PROTECTED]
> Subject: Re: [DOTNET] StringBuilder Overhead
>
>
> Thanks, Drew.
>
> I read that but wanted to confirm that that was the case.
>
> Jim
>
> >>> [EMAIL PROTECTED] 05/09/02 09:31AM >>>
> Jim Graf [mailto:[EMAIL PROTECTED]] wrote:
>
> > Richter states that setting the length of a
> > StringBuilder instance to 0 allocates a new character array.
> >
> > Does anyone know what the overhead of the following would be.
> >
> > StringBuilder sb(600,2000)
> > ...use sb
> > sb.Remove(0,sb.Length);
> >
> > I want to reuse the same Stringbuilder over and over again.
>
> From the SDK docs on StringBuilder::Remove:
>
> <snip>
> The current method removes the specified range of characters from the
> current instance. The characters at (startIndex + length) are moved to
> startIndex, and the string value of the current instance is
> shortened by
> length. The capacity is unaffected.
> </snip>
>
> According to the last sentence, the character buffer will not
> be affected.
>
> HTH,
> Drew
>
> You can read messages from the DOTNET archive, unsubscribe
> from DOTNET, or
> subscribe to other DevelopMentor lists at http://discuss.develop.com.
>
> You can read messages from the DOTNET archive, unsubscribe
> from DOTNET, or
> subscribe to other DevelopMentor lists at http://discuss.develop.com.
>
You can read messages from the DOTNET archive, unsubscribe from DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.
You can read messages from the DOTNET archive, unsubscribe from DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.