struct Bar { double value; }; class Foo { public: Bar arr1[15]; Bar arr2[12]; }; int main() { Bar (Foo::* pa)[15] = &Foo::arr1; Foo f; (f.*pa)[0].value = 0; return 0; }