メンバ関数をstd :: mem_fnで格納してラップすることは可能です。メンバ変数ラッパー
Cでは、メンバ変数にoffsetof(...)を使用して、メンバ変数を厳密にラップすることができます(しかし、いくつかの型だけが対象です)。
C++でメンバー変数をラップすることはできますか?最もクリーンな方法は何ですか?
すなわち
class X
{
...
M m;
...
};
mem_var<M> xm = &X::m;
int main()
{
X x = ...;
M i = ...;
xm(x) = i; // same as x.m = i
cout << xm(x); // same as cout << x.m
}
... – Pablo