いやね
char *c = "strings";
std::string s(c);
こんな感じで解釈されるならば
Hoge h[] = {"s1", "s2", "s3"};が
Hoge h[3];
h[0] = Hoge("s1");
h[1] = Hoge("s2");
h[2] = Hoge("s3");
みたいに書けるじゃないかな〜と思ったの