Format.convert problme
grauzone
none at example.net
Sat Apr 4 15:22:40 PDT 2009
Qian Xu wrote:
> Hi All,
>
> tango.text.convert.Format provides a nice function to convert anything
> to string.
>
> It works perfect except the argument is a pointer type.
> It will print the address of a pointer instead of its value
>
> For instance: --------------------------------
> int* i = new int;
> *i = 10;
> Format.convert("{}", i); // <- the address of the pointer
> ----------------------------------------------
>
> How to let it print the value instead of the address?
> Because I wanna write a dump function to dump the value of any data type
> (also void, null)
Check if the variable is a pointer, and if yes, dereference it:
alias typeof(i) T;
static if (is(T T2 : T2*)) {
T2 i2 = *i;
Format.convert("{}", i2);
} else {
Format.convert("{}", i);
}
More information about the Digitalmars-d-learn
mailing list