2013-02-26 83 views
0

兩者之間有什麼明顯的差異,使得在某些情況下使用者比其他人更實用?有人可以概述這裏的差異以及兩者的相關性能信息嗎?C++中的位向量和位集之間有什麼區別?

+1

你是什麼意思的位矢量('std :: vector '也許?) – 2013-02-26 04:45:44

回答

0

「位向量」std::vector<bool>是堆中的動態大小的數組,它滿足Container類的大部分要求。爲此,它定義了一個時髦的iterator類,它在棘手的代理對象設計模式之後返回reference對象。

A std::bitset是一個靜態大小的數組,其存儲與對象內聯。它沒有迭代器,只有訪問操作符如下標。

按位訪問部分將執行類似操作。 vector也會在創建和銷燬時調用operator newoperator delete,並在必要時偶爾重新分配。