QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5531|回复: 1
打印 上一主题 下一主题

vector调用push_back为什么会失败?初始化了也不行

[复制链接]
字体大小: 正常 放大

16

主题

9

听众

31

积分

升级  27.37%

  • TA的每日心情
    慵懒
    2015-4-30 14:22
  • 签到天数: 1 天

    [LV.1]初来乍到

    自我介绍
    拉拉
    跳转到指定楼层
    1#
    发表于 2015-4-14 10:06 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    头文件handle.h8 X; o: v% q, a6 \6 f2 X
    #ifndef _HANDLE_H
    9 S8 Z+ N6 F  J9 M/ M& X#define _HANDLE_H
    5 s: @0 `% z+ z8 g/ h% Y; Z# A3 J% t; }8 g
    class Handle{3 a( {% A0 q1 F1 I
        struct StackOfInt;
    8 R6 @! }  p, {    StackOfInt* smile;3 v! I4 v9 Z  B( B5 g# H- \! o
    public:
      o- U4 g. B) }# p    void initialize();6 Q0 L) r, L  T
        void cleanup();
    5 k) Z: M. ^! Z8 k    void push(int elem);6 w- k2 w) |9 b) C* `1 h# r
        int fetch();8 c) t0 V6 p- m& |3 |
        int pop();+ H, X4 u% f" C, J7 v/ X+ o7 u' Y6 a& D
        int count();
    5 _/ }+ P: y9 C) U3 `3 g1 p6 k};
    : o( o' t+ t* E6 Y3 x8 A! p$ G7 @( y; b3 F8 T
    #endif//_HANDLE_H
    . k* \) F/ Y. ~9 r3 q: \' u( @( e" d
    类class的函数定义
    0 A9 N: n8 m; N+ _1 t4 s- z2 N- H#include<iostream>: H6 T  i& W! R
    #include<vector>
    9 [8 m" c; e5 V" G& u6 D% X8 H#include "handle.h"! y, {! A  ^1 _; ?" E. |
    using namespace std;
    & @9 ]  e; c7 w6 u- K6 ]/ h, y' Q! B" H- v1 e2 c( D: b6 ~
    struct Handle::StackOfInt{
    . z7 L; X" H; M$ i0 g/ u7 {    vector<int> top;+ _; b6 O: s1 b+ D7 }
    };  a6 `; E. u3 c( A

    + {4 n8 `  t2 N) N( Dvoid Handle::initialize()
    4 F- R% @. [& r9 t( K* L{
    & q3 O' U- T- f& K$ G    StackOfInt* smile = new StackOfInt;
      ^& a6 j+ V  f% h" _! K    smile->top.reserve(100);
    # p5 U, v9 j% f    cout << smile->top.capacity() << endl;
    $ x$ R( Z* e) G5 S. G# |* C' S}
      E) p2 A& _. G7 A( H' l% s
    * k, Q, a( ^2 n% X2 l- M8 rvoid Handle::cleanup()
    : o$ C; `! f7 U' l. m4 S$ P{
    / r/ X9 G% Z% J; F+ W0 R    delete smile;' {! q. c7 B. L; {6 R/ ~7 c& R
    }1 W! c) S- z  W9 V  g6 B

    $ m% \% j+ N0 h' s& p- J' dvoid Handle::push(int elem)
    ) {7 U$ ]5 I( k6 ^* R, j% J{
    $ n2 G" M! z- Z9 V' O3 b! }6 l$ ^    cout << "before push\n";5 t1 S8 f; l1 d  j3 z
        smile->top.push_back(elem);) N0 X' H' F. Z+ C" u% r8 u
        cout << "after push\n";8 q. G; l$ p6 Y( u2 [
    }
    0 F4 R6 m1 d. U8 P6 f# L! J8 q: qint Handle::fetch()
      {) a1 d1 T. S2 y; [8 e7 T{
    1 W  k4 E% i: ^+ p1 i/ M    return smile->top.back();* X6 F. D" }3 d, F& M
    }' T9 `/ m1 z9 ]# c
    int Handle::pop()
    3 M1 x) R& L4 k; E) \{
    / v; w% B) O) F# V# P7 L    int n = smile->top.back();( L: ?' q! X4 s" N
        smile->top.pop_back();( j7 w- D3 r2 S, j! X8 G* A# P
        return n;
    5 G/ [2 |) `& u1 \2 [- E0 d5 l}
      V( G: H: O' v/ m8 cint Handle::count()
    $ x- P) d# G! |, C{
    ; R9 Q" k& O# I% c, ]: M& f( l    return smile->top.size();
    $ F+ h5 T$ C) O0 [- Y, Q}
    6 s4 R: x$ a) y5 S4 O9 V4 I( M# P3 Q) l! t9 I( g
    主函数 main.cpp
    8 ^+ I1 F8 ~  G9 @  {& I; R* L#include<iostream>
    & O$ C: G; x% m5 ~6 r% ]#include "handle.h"
    : M% J0 J" k$ z" l& ^6 xusing namespace std;4 A: n! K) W% J

    : h0 Q5 s' n5 V5 Rint main()0 H& H# W& M, d
    {
    - T( i) ^1 @# L; c& P4 E    Handle h;
    " ~+ t8 U% K5 M2 ~, g  a: N    h.initialize();) r9 e! k; P% c* I
        for (int i = 0; i < 10; i++)
    4 V0 F7 y* Y5 d8 B$ q    {) S) H. [2 n( \/ n: V  P
            h.push(i);5 N0 Z4 a- C3 A; @: ~
            cout << "last element is " << h.fetch() << endl;0 G/ N; z( z  G  ~7 s* _
        }
    3 V% ]) ]" I6 N' I  o0 k1 X    for (int i = 0; i < 10; i++)4 b! m8 h" |: x* Y
        {. U2 X" ^8 c9 h! a# W$ X
            h.pop();
    2 n0 I1 ~0 w, j! l) v    }
    - [) m* _5 Z. `7 A, w  @
    3 |+ S5 f2 ?  |# L9 W, [# B    return 0;* B# ]# ?8 ~* _3 k% x1 g" |
    }
    / F# q' }/ b" j3 |) J8 ~- m4 Y$ Z8 P

    5 Z& L+ ?, b( s) n/ C/ \, L3 R' N5 I8 O& M. j
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信

    342

    主题

    41

    听众

    214748万

    积分

    升级  0%

  • TA的每日心情
    擦汗
    2015-7-24 10:40
  • 签到天数: 37 天

    [LV.5]常住居民I

    社区QQ达人 邮箱绑定达人 元老勋章 发帖功臣 新人进步奖 优秀斑竹奖 金点子奖 原创写作奖 最具活力勋章 助人为乐奖 风雨历程奖

    群组MATLAB的工程数学应用

    群组SAS公益讲座

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-4-11 04:46 , Processed in 0.598293 second(s), 57 queries .

    回顶部