引用分配的运算符重载

Operator overloads for reference assignment

本文关键字:重载 运算符 分配 引用      更新时间:2023-10-16

是否有任何运算符可以重载,以便在将引用分配给对象时可以知道它。 例如:

Foo f;
Foo copy;
copy = f;        // Calls assignment operator
Foo *pF = &f;    // Calls operator& which can be overloaded
Foo copy2(f);    // Calls copy constructor explicitly
Foo & refF = f;  // Can f be made aware that this happened??

我意识到能够做到这一点可能是未来灾难的秘诀,但它似乎对跟踪或调试可能有用。(试图抵御不可避免的"你想实现什么"的反应。我不是在试图解决任何具体问题。

不,它不能。不使用任何构造函数来构建引用。引用只是一个别名。