On Wednesday, 17 January 2018 at 23:15:33 UTC, Jiyan wrote:


I want to convert from ints implicit to a struct type, so for example:


I'm not sure what your actual use case is, but based on the example, you can just template `useV`.

import std.stdio;

struct use
{
        int x;

        int toInt()
        {
                return x;
        }

        use fromInt(int v)
        {
                return use(v);
        }

    alias toInt this; // implicit conversion to int value

        this(int v)
        {x = v;}
}

void useP(int v)
{
        v.writeln;
}

void useV(T)(T v)
{
        v.writeln;
}

void main(string[] args)
{
        use a = use(2);
        //useP(a);
        useV(2); // how can i let this work?
}

https://run.dlang.io/is/pJhQJh

Mike

Reply via email to