QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5616|回复: 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.h7 ?/ |$ ]# `; \1 b2 ~% J) K
    #ifndef _HANDLE_H
    " b' o( Q( E. I9 p#define _HANDLE_H
    4 i" A2 u) G0 B: _5 W0 T* c) N: m9 |  b
    class Handle{& k) c) R* R- s1 J! ^
        struct StackOfInt;4 ]- e1 ?3 h3 `) y2 B1 i
        StackOfInt* smile;
    1 _; }" X. G0 spublic:
    + A6 H4 M3 ~- [- L* `8 @    void initialize();
    0 b3 d# B  U( C5 L' E" L4 ?    void cleanup();, y( Z% l1 C! n/ K6 \& V! Y& Y
        void push(int elem);
    ' c! z% e6 w9 o& i0 t( O    int fetch();3 k* w% O7 P& o1 N& T: N/ A
        int pop();
    / g* O1 c; ~* k% J) g    int count();  `4 W% c! j& Q0 M. E! a. _
    };( Z6 g7 ~$ |0 b; ~; L& `
    5 C$ A% ^6 D. W; b* R, R9 K
    #endif//_HANDLE_H
    , o& K7 S. S/ z4 `2 b5 W5 ]6 H. a+ o. j3 t
    类class的函数定义2 z3 r; x+ J0 j8 i: r
    #include<iostream>
    - b! t; ]% `9 z: H0 a2 o" ]#include<vector>( m) B6 z& E$ b. ?( Z5 ^& Q
    #include "handle.h"/ W4 y6 p  ^( w, L% j
    using namespace std;0 @' X  b( t8 R! ^' k( h

    ! M2 H5 H: i8 W6 r& r$ r' Vstruct Handle::StackOfInt{2 e/ V8 S+ A6 }8 d/ _
        vector<int> top;& m- o, C! R- l5 }
    };
    - f- d3 Q) B& E$ q/ p
    " r) n1 M/ F% d; w! U0 lvoid Handle::initialize()
    9 M% T$ u8 N8 V7 i, F3 c, S{
    7 U/ y2 N0 ]$ X( m* L+ f    StackOfInt* smile = new StackOfInt;; }1 j9 k5 c: g
        smile->top.reserve(100);
    5 _, f; _" ~" d    cout << smile->top.capacity() << endl;4 a' y7 f% P& _7 d# O6 ?1 n$ x
    }+ i  ]& b1 D2 P, y' T7 u$ ?  n5 `
    ' P& B) D* D) J' J7 x" w
    void Handle::cleanup()
    - A' n. ^3 U, a8 {{
    * x: d0 e5 Y8 a: T2 d; e    delete smile;' X( [; Z; a. |& d1 q) b
    }5 E0 I9 Y' h) I  [3 |8 m
    ; @( C9 B. E3 F( w
    void Handle::push(int elem)$ h5 k- T% L. W8 D2 p' x
    {0 ^8 `9 Y/ L2 ]" w* E4 b1 A. ?! ^
        cout << "before push\n";
    & H3 z* I+ L: V. b+ t    smile->top.push_back(elem);- C/ H' y: C2 @* H7 r; z8 m
        cout << "after push\n";
    # j- y* V9 g" b2 M}2 V1 y- d9 s0 F# i! ^- {# e# O
    int Handle::fetch()8 G9 C4 w7 V8 _% f7 _
    {* S( I. h6 s) K' j
        return smile->top.back();
    8 _: |- d, b' H: z/ `* `}
    7 F; F% ?5 T2 r# J" [; ]8 {  ^int Handle::pop()
    " f! A# n: e7 u5 p* ?2 x{
    , c( e& N0 J$ L. O* d$ ?# ?    int n = smile->top.back();7 a; I5 c! l5 Z  m: g
        smile->top.pop_back();/ P$ i" e. d! i% d& g! @4 s* ~
        return n;
    # j( x, E, K" C5 Q! }( F' C  o}, h# q8 {; v4 X  Z
    int Handle::count()
    ; H: q, R# B9 B5 f{
    - Y; Q0 x! W7 _( H( Z. ^* m    return smile->top.size();
    1 ?% Y* I% l; V}
    8 m5 F2 S2 k$ z6 r# q+ h  r6 `8 ?1 H! ]2 F* x
    主函数 main.cpp
      O) C1 F6 T6 T$ f: E# a$ P( s: _#include<iostream>% B( X2 e, X+ |5 i0 Y4 C! V
    #include "handle.h"6 Z, x# ^1 n: q( ~5 v# |
    using namespace std;: a6 j! z, G$ z  T

    ( E) y" c7 b5 u/ gint main()1 `! B% W( S2 t
    {& K6 O' d2 Q; d8 o, @
        Handle h;
    * f( ]# ~& A8 N; m. L    h.initialize();
    7 j  M/ l* w- \+ r    for (int i = 0; i < 10; i++)
    . i, t+ |8 P; c4 h& }' L    {  H$ \; Y, E1 o' X" u$ J, A8 O
            h.push(i);$ r7 P- H3 Y- |
            cout << "last element is " << h.fetch() << endl;
    6 x; n! x: d3 I. B( B) R9 J    }
    6 o9 W& {7 ^+ F* x0 }    for (int i = 0; i < 10; i++)' p1 ^, T/ i2 y) D- S
        {
    ' @4 d' a) w/ w2 q        h.pop();7 O8 b+ L3 m8 k
        }' O/ {3 P# S) T& z1 Y6 D1 b
    ( W  v: ]) W' ]* E( B$ d
        return 0;
    2 ]! S* \) ~) v2 b7 \0 h}
    0 h0 {8 e/ b; P. ~' @* O. t8 s2 y3 F4 }0 o% e
    3 S: E: ]9 t: n  S  a' L+ y
    6 j+ b& q* {: B% P+ l/ h1 Y
    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-7-31 02:03 , Processed in 0.444581 second(s), 57 queries .

    回顶部