On Thursday, 30 September 2021 at 01:09:47 UTC, Hipreme wrote:
I have a template function that all it does is given a symbol, it loads a dll for its type + its name:

```
void loadSymbol(alias s, string symName = "")()
{
        static if(symName == "")
                s = cast(typeof(s))_loadSymbol(_dll, (s.stringof~"\0").ptr);
        else
                s = cast(typeof(s))_loadSymbol(_dll, (symName~"\0").ptr);
}
```

If symName is always a string literal, then you don't need to append a "\0"; string literals always have a trailing NUL after them, and they autoconvert to const(char)[] so you don't need the .ptr either.

Reply via email to