1
我跑cppcheck,我得到這個消息: 「成員變量 ' i_refvec :: data_中'不 ' i_refvec ::運算符= '分配一個值。」cppcheck錯誤不符合我所看到的
該代碼來自模板數值工具包(TNT)。我認爲我看到這些變量得到初始化,但我仍然收到投訴。
幫助?
相關的功能(開始於行155)雲:
template <class T>
i_refvec<T> & i_refvec<T>::operator=(const i_refvec<T> &V)
{
// Do nothing if we're pointing at ourselves
if (this == &V)
return *this;
if (ref_count_ != NULL)
{
(*ref_count_) --;
if ((*ref_count_) == 0)
destroy();
}
data_ = V.data_;
ref_count_ = V.ref_count_;
if (V.ref_count_ != NULL)
(*(V.ref_count_))++;
return *this;
}
TNT和cppcheck似乎並沒有很好地配合,可能是因爲TNT在模板上太重了? (TNT是所有標題,沒有cpp代碼)。它還聲稱成員對象沒有被初始化。我會盡力爲你們一起舉一些例子。 –