On Sunday, 6 September 2020 at 05:06:26 UTC, starcanopy wrote:
On Sunday, 6 September 2020 at 03:42:36 UTC, N.S. wrote:
I'd like to check whether a variable is initialized or not.
And I'd also like to uninitialize a variable that is already
initialized. Thanks!
int x = void;
if (x == void)
{
writeln("x not initialized");
}
else
{
// OK, use x
}
// Uninitialize x
x = void;
You might consider Nullable from std.typecons; however, if
you're avoiding implicit initialization for performance
reasons, then this solution might not be applicable.
import std.stdio: writeln;
import std.typecons: Nullable;
Nullable!int x;
if (x.isNull)
{
writeln("x not 'initialized'");
}
else
{
// OK, use x
}
// 'Uninitialize' x
x.nullify();
Perfect, thanks!