大家好,C/C++ 代码编程专家。
我偶然发现了这段代码,但我对这两个函数返回的内容感到困惑。
有好心人能帮帮我吗?
我试图使代码尽可能通用且对其他人有用。
ClassA*& func1() {
static ClassA* mClassA;
return mClassA;
}
ClassA* func2() {
ClassA*& mClassA = func1();
if(!mClassA) {
... // omitted some code that fill mClassA with data.
}
return mClassA;
}
[编辑] 还想问,func1() 和 func2() 中的 *& 是否相互抵消?