你會怎麼考慮一個更好的編碼風格:在頭文件中聲明函數/方法的參數名稱,或者只在源文件中聲明函數/方法的參數名稱,因爲它可以同時執行這兩個操作?如果您實際上只考慮在源文件中聲明函數/方法的參數名稱,那麼您將如何聲明默認值?函數聲明應該包含參數名稱嗎?
外標題:
//One.hpp
#ifndef ONE_HPP
#define ONE_HPP
namespace eins {
/** \brief description
*
* \param one represents ....
* \param two represents ....
*/
void function(int,int);
}
#endif
// One.cpp
#include "One.hpp"
eins::function(int one,int two) {
//Do stuff//
}
內部頭:
//One.hpp
#ifndef ONE_HPP
#define ONE_HPP
namespace eins {
/** \brief description
*
* \param one represents ....
* \param two represents ....
*/
void function(int one,int two);
}
#endif
// One.cpp
#include "One.hpp"
eins::function(int one,int two) {
//Do stuff//
}
我個人的觀點是,第一種方式比較好,因爲用戶實際上是被迫讀的意見/ API和不能誤導讀取參數名稱。但我不確定這一點,實際聲明默認值會破壞我的風格,因爲您必須在函數/方法的頭聲明中這樣做。
你錯誤地認爲你需要包含一個參數名來聲明一個參數的默認值。這非常好:'void function(int,int = 0)'。這是一個默認值的未命名參數。 –
爲了對付您關於消費者的評論被參數的正式名稱誤導,我認爲這是參數名稱不佳的指標。對於在代碼中無法輕易描述的內容,例如特定代碼段的「爲什麼」,文檔是最好的*。 –