1
說我有一個未公開的基類的一些外部庫:我可以在派生類中記錄虛擬成員而不重寫它嗎?
class Base {
public:
virtual void func() { /* something */ }
}
在我的圖書館,我想從這個類派生,所有的成員記錄:
class Derived : public Base {
/*!
@brief do a thing
*/
void other_func();
/*!
@brief do the base thing and another thing
*/
void func(int arg);
/*!
@brief do the baseclass thing
Also, guarantee some extra invariants XYZ that the baseclass
does, but does not require subclassers to do.
*/
using Base::func;
// virtual void func() override;
// don't want to declare a new implementation of func() here
// so how can I attach a docstring to func() such that doxygen picks up on it?
}
我如何可以記錄繼承Base::func
於Derived.h
?
當然,您可以添加評論,但虛擬成員函數的整體思想是,如果您不覆蓋它,則不必聲明它們。如果你的新類沒有覆蓋它,那麼爲什麼你需要/需要一個文檔字符串呢?它和基類做的事情是一樣的 - 它希望被記錄下來?如果沒有,請添加文檔,並將補丁發佈爲原始供應商/作者的反饋! –
@MatsPetersson:問題是它沒有被記錄在外部基類中,所以我想在清單中添加文檔,這將被doxygen拾取。此外,還有一些Derived :: func預期會遇到的額外不變量,我想要記錄 - 它恰好恰好符合這些'Base :: func',因此不需要重新實現 – Eric