digitalmars.D.learn - Convert struct to set of fields and pass it's to constructor
- Suliman (22/22) Feb 01 2017 Class constructor accept only set if fields like
- Minty Fresh (6/28) Feb 01 2017 tupleof is probably what you're looking for.
- Suliman (3/39) Feb 01 2017 Because it's implemented not by me, and I do not want to touch
Class constructor accept only set if fields like
this(string login, string pass)
Can I create structure, fill it, and than pass to constructor?
Like this:
```
import std.stdio;
struct ConnectSettings
{
string login;
string pass;
};
ConnectSettings cs;
void main()
{
cs.login = "admin";
cs.pass = "mypass";
}
```
and than pass to constructor it's like:
`... new SomeClass(cs)`
I tried, but get error, that ctor accept only fields list. Can I
unroll struct to it?
Feb 01 2017
On Wednesday, 1 February 2017 at 13:37:27 UTC, Suliman wrote:
Class constructor accept only set if fields like
this(string login, string pass)
Can I create structure, fill it, and than pass to constructor?
Like this:
```
import std.stdio;
struct ConnectSettings
{
string login;
string pass;
};
ConnectSettings cs;
void main()
{
cs.login = "admin";
cs.pass = "mypass";
}
```
and than pass to constructor it's like:
`... new SomeClass(cs)`
I tried, but get error, that ctor accept only fields list. Can
I unroll struct to it?
tupleof is probably what you're looking for.
ie.
new SomeClass(cs.tupleof);
That said, why not have the constructor accept the struct as a
parameter?
Feb 01 2017
On Wednesday, 1 February 2017 at 13:51:28 UTC, Minty Fresh wrote:On Wednesday, 1 February 2017 at 13:37:27 UTC, Suliman wrote:Because it's implemented not by me, and I do not want to touch its realization.Class constructor accept only set if fields like this(string login, string pass) Can I create structure, fill it, and than pass to constructor? Like this: ``` import std.stdio; struct ConnectSettings { string login; string pass; }; ConnectSettings cs; void main() { cs.login = "admin"; cs.pass = "mypass"; } ``` and than pass to constructor it's like: `... new SomeClass(cs)` I tried, but get error, that ctor accept only fields list. Can I unroll struct to it?tupleof is probably what you're looking for. ie. new SomeClass(cs.tupleof); That said, why not have the constructor accept the struct as a parameter?
Feb 01 2017








Suliman <evermind live.ru>