在計算機科學領域,包裝庫(英語:wrapper library,也稱封裝庫)是一種函式館,可以將其它函式館已存在的接口翻譯成另一種兼容接口。
基本介紹
- 中文名:包裝庫
- 外文名:wrapper library
- 性質:函式館
- 領域:計算機
簡介
- 改良設計存在缺陷或者過於複雜的接口
- 溝通無法協作的代碼(例如數據格式不兼容)
- 跨語言、跨運行時系統互動
示例
C界面
int pthread_mutex_init(pthread_mutex_t * mutex , pthread_mutexattr_t * attr);int pthread_mutex_destroy (pthread_mutex_t * mutex);int pthread_mutex_lock (pthread_mutex_t * mutex );int pthread_mutex_unlock (pthread_mutex_t * mutex );
C ++包裝器
class Mutex{ pthread_mutex_t mutex;public: Mutex() { pthread_mutex_init(&mutex, 0); } ~Mutex() { pthread_mutex_destroy(&mutex); }private: friend class Lock; void lock() { pthread_mutex_lock(&mutex); } void unlock() { pthread_mutex_unlock(&mutex); }};class Lock{ Mutex& mutex;public: Lock(Mutex& mutex):mutex(mutex){mutex.lock();} ~Lock(){mutex.unlock();}};