[問題] 自訂型態的元素放入vector裡拿不出來

看板C_and_CPP作者 (花生)時間12年前 (2012/04/13 04:01), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
自己定義了一個class 叫做A 使用標準函式庫宣告一個vector,專門存放"A指標"的元素 new 了一個A的物件後,把他assign 給 aPtr 再把aPtr 丟入vector中。 問題來了 該怎麼從vector中取出原本的元素呢? #include <iostream> #include<string> #include<vector> using namespace std; class A{ public: int intMember; A::A(int a){ intMember = a; } }; int main(){ A* aPtr = new A(1); vector<A*> avector; avector.push_back(aPtr); A* newAPtr = (A*)avector.pop_back(); } VC++顯示錯誤: error C2440: '型別轉換' : 無法由 'void' 轉換為 'A *' 試了好久還是沒辦法取出元素QQ 查了google也搜不到類似的問題Q_Q -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.69.9

04/13 04:25, , 1F
對不起我耍笨了 用front()就可以了>"<
04/13 04:25, 1F

04/13 22:43, , 2F
vector用[]就可以取出來了吧! 把它當array看待就是了.
04/13 22:43, 2F
文章代碼(AID): #1FXpINtw (C_and_CPP)