类net
的以下成员函数的目的是"解决"类node
中的节点网络。在此过程中,由net::solve_self()
函数执行,net
的私有成员被net::solve_self()
的算法覆盖并销毁。
float net::solve(node *a, node *b) {
net netsolve = *this;
return netsolve.solve_self(a, b);
}
相反,我需要在调用net::solve()
时保留所有这些成员。所以我的想法是在真实net
对象的虚拟副本上启动自毁功能,以保留原始内容并仍然获得我的返回值。
但是,net::solve_self()
内部使用this
指针,它不可避免地指向原始net
对象而不是虚拟netsolve
对象,因此尽管有克隆,原始的一个被摧毁。
this
指针可以反弹到netsolve
对象吗?
或者如何解决这个问题?