我正在編寫一個庫,並想知道公共API中使用的數據類型的最佳做法是什麼。在公共C++ API中的類型
鑑於功能
void foo (int bar)
它期望的索引一些內部陣列/容器。應該是什麼類型?因爲索引永遠不會是負數,所以我可以使用unsigned int或size_t。或者,如果提供了一些無效值,我應該堅持使用純int和斷言/拋出?
一般情況:我應該根據有效的數據範圍選擇一種類型(例如爲了避免負面檢查)嗎?
編輯:另一個例子,假設我的庫提供了打印文件的功能。用戶可以選擇要打印的頁面範圍:
void print (int page_from, int page_to)
+1:爲數字應該表示的數量創建一個typedef。 – avakar 2009-12-03 09:29:53