是否有任何C++標準保證STL迭代器可以存儲在union中?如果是這樣,哪個標準?在聯合中存儲STL迭代器是否合法?
例如:
union MyUnion {
std::vector<int>::iterator iter;
size_t size;
};
,我問的是,我移植別人的代碼存儲在工會std::vector
和std::map
迭代器和MSVC2013似乎並不喜歡它的原因。我得到錯誤C2621:非法工會成員;類型...有一個拷貝構造函數。我想確定這是代碼中的錯誤,MS STL實現中的錯誤還是編譯器中的錯誤。
非常感謝!
從哪裏可以獲得所有標準草案的列表? –
@templateboy http://stackoverflow.com/questions/81656/where-do-i-find-the-current-c-or-c-standard-documents – Brian