ubyte[] to string with @nogc - different behaviors
Luhrel
lucien.perregaux at gmail.com
Wed Aug 5 21:15:10 UTC 2020
On Wednesday, 5 August 2020 at 20:28:22 UTC, Steven Schveighoffer
wrote:
>
> ...
>
> But still, you are mallocing a block and throwing it away.
>
> And I realize, this wouldn't have worked anyway, as str is a
> string, which means you can't overwrite the data.
>
> I think there is likely a better way to do what you are trying
> to do.
>
Maybe with a ref parameter, but I think this will only move the
problem outside the function.
>
>...
>
> What is the source of the incoming data? Will it be around by
> the time you need to use this string? Can you just slice it
> without copying? I'm not familiar with this code, so I don't
> know the requirements.
>
> I would think:
>
> return cast(const(char)[])buffer[0 .. strnlen(buffer.ptr,
> buffer.length))];
>
> or something like that.
>
> -Steve
Will try that.
More information about the Digitalmars-d
mailing list