是否有可能将两个变量关联在一起改变?关联两个变量一起改变
例子:
class foo{
public:
std::vector<int> v1;
std::vector<float> v2;
//Imaginary Code here:
void on_v2_change(){
std::transform(begin(v2),end(v2),begin(v1),[](auto& item){ return std::round(item);});
}
}
int main(){
foo bar;
bar.v2.push_back(5.7);
//v2={5.4}
//v1={5}
}
有没有实现以前的一种简单的方法?像Java或C#事件。
是的,通过将这两个变量包含在包含对其他变量的引用的类中。你确定这是你想要做的吗? –
除了导致我问这个问题的原始问题之外,很高兴知道是否可以在C++中执行此操作。顺便说一句,如果您有时间提供关于您提到的方式的答案,那将会很棒并非常感谢。 –
你真的需要'v1'吗? 'v2'的* int-view *似乎可以完成这项工作。 (即使两者都需要编写特定的代码)。 – Jarod42