Explicit constructor has to be called via the structure/class name:
a("Widf")
Using an equality as a constructor is not an explicit constructor call. You can use this:
a a3 = a("Widf")
Which will:
- Create a temporary object a
- Use a copy constructor to create a3
the compiler optimizer should be able to optimize this though.
Alternatively, you can just write
a a3("Widf")