#include <vector>
#include <string>
#include <iostream>
using namespace std;
struct S
{
vector<int> v;
string s;
string s2;
int i;
char c;
};
void print_all(const S* arr, size_t n, const string S::*member)
{
while (n > 0)
{
cout << arr->*member << "\n";
++arr;
--n;
}
}
int main(int, char**)
{
S my_array[3];
my_array[0].s = "a";
my_array[1].s = "b";
my_array[2].s = "c";
my_array[0].s2 = "d";
my_array[1].s2 = "e";
my_array[2].s2 = "f";
print_all(my_array, 3, &S::s);
print_all(my_array, 3, &S::s2);
return 0;
}
I2luY2x1ZGUgPHZlY3Rvcj4KI2luY2x1ZGUgPHN0cmluZz4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCBTCnsKICAgIHZlY3RvcjxpbnQ+IHY7CiAgICBzdHJpbmcgczsKICAgIHN0cmluZyBzMjsKICAgIGludCBpOwogICAgY2hhciBjOwp9OwoKdm9pZCBwcmludF9hbGwoY29uc3QgUyogYXJyLCBzaXplX3QgbiwgY29uc3Qgc3RyaW5nIFM6OiptZW1iZXIpCnsKICAgIHdoaWxlIChuID4gMCkKICAgIHsKICAgICAgICBjb3V0IDw8IGFyci0+Km1lbWJlciA8PCAiXG4iOwogICAgICAgICsrYXJyOwogICAgICAgIC0tbjsKICAgIH0KfQoKaW50IG1haW4oaW50LCBjaGFyKiopCnsKICAgIFMgbXlfYXJyYXlbM107CgogICAgbXlfYXJyYXlbMF0ucyA9ICJhIjsKICAgIG15X2FycmF5WzFdLnMgPSAiYiI7CiAgICBteV9hcnJheVsyXS5zID0gImMiOwoKICAgIG15X2FycmF5WzBdLnMyID0gImQiOwogICAgbXlfYXJyYXlbMV0uczIgPSAiZSI7CiAgICBteV9hcnJheVsyXS5zMiA9ICJmIjsKCiAgICBwcmludF9hbGwobXlfYXJyYXksIDMsICZTOjpzKTsKICAgIHByaW50X2FsbChteV9hcnJheSwgMywgJlM6OnMyKTsKCiAgICByZXR1cm4gMDsKfQ==