在从 QDjangoModel 派生的类中,我看到如下代码:
return qobject_cast<RawType*>(foreignKey(name));
我对 C++ 非常有经验,但对 Qt 完全陌生。我知道foreignKey
函数返回的 QObject 本身就像一个智能指针,但它不知道RawType*
从中提取的内容将使用多长时间,那么我该如何判断它的生命周期呢?是什么让 QObject 存在——它是 QDjangoModel 对象吗?
(很明显,这段代码不是我写的,它很可能是一个非常糟糕的设计。他们雇我清理这个程序的代码等等。)