I have a struct
:
typedef struct user { string username; vector<unsigned char> userpassword; } user_t;
I need to initialize userpassword
with an empty vector
:
struct user r={"",?};
What should I put instead of ?
?
To properly initialize a structure, you should write a ctor to replace the compiler provided ctor (which generally does nothing). Something like the following (with just a few attributes): struct grupo { float transX, transY; // ...
You can actually create a vector of structs!
Both std::string
and std::vector<T>
have constructors initializing the object to be empty. You could use std::vector<unsigned char>()
but I'd remove the initializer.
Like this:
#include <string> #include <vector> struct user { std::string username; std::vector<unsigned char> userpassword; }; int main() { user r; // r.username is "" and r.userpassword is empty // ... }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With