QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5623|回复: 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.h" [; n. r* ?$ ?" E/ ]
    #ifndef _HANDLE_H. g" J* K& {3 ]3 B* }5 ^" c
    #define _HANDLE_H
    ! ?5 j3 k! |" U7 v% T
    & ^# z5 y& m6 V9 d+ yclass Handle{+ g7 \& u1 P* _' {- A; a
        struct StackOfInt;
    " o0 j% }: x  ]& m0 H# Q! Z    StackOfInt* smile;
    # w) v* ^' Q  d" v# Npublic:
    7 c* J, |6 L' e* k/ e    void initialize();
      a$ Q7 ?# S7 J  }9 M/ B0 a5 d    void cleanup();
    8 Y* w2 V5 z1 ]    void push(int elem);
    # E2 Y( J$ H- u( S    int fetch();
    8 f% H6 c& {8 E" C- Y5 O    int pop();
    - e9 J& _2 L" S+ ^* Q' x    int count();
    / \) i* U" Z, P5 j; T% v+ @};8 d$ K( p2 B0 I, s4 X" ]+ N

    6 F) I* N( \7 X6 [#endif//_HANDLE_H
    $ Z- A, F+ ?+ T$ h/ ]; W1 s3 S- i: O9 R; p
    类class的函数定义
    , M" g: e0 H; P8 U3 Z( c+ v#include<iostream>
    7 r+ `8 d8 |8 b+ A5 K, J5 v3 p#include<vector>+ _7 Z- L  S: a+ D, z4 ~  i
    #include "handle.h"2 V. e5 `3 j, ~3 J, h8 F& @
    using namespace std;
    * Q' L3 Z1 i  a* L$ y- o7 s! ?
    # O0 {# ~" M6 H8 r% ~struct Handle::StackOfInt{
    " J  h7 M$ ]  J/ L    vector<int> top;
    2 c, |' b7 A: K" r3 }( z};  C2 i/ D# V6 o5 |' L; e

    9 \+ H5 J9 [: V) E1 Xvoid Handle::initialize()( b& {, B3 @! L% I- N% C. a
    {) @6 ]0 ]' D$ Y( z. A( D
        StackOfInt* smile = new StackOfInt;
    : T8 S. j: |8 l7 V    smile->top.reserve(100);
    / q& v7 {* E3 H& B    cout << smile->top.capacity() << endl;
    ) X; ?) B# M4 w( g4 u. [: @5 a$ p}
    ( R" u( |) e( k- C8 M8 P* g/ w4 x" v. N  x, t( U
    void Handle::cleanup()$ T9 \& L- y# f2 \) L
    {& C7 \4 l9 s! j- e, T9 d
        delete smile;
    2 v: e2 \- h' n, _( j) x}% H+ L  F! t% m) J3 @7 I

    & c8 j9 K1 Q' v+ k& c% bvoid Handle::push(int elem)
    ' W+ n, W- P1 M{5 A1 z* U& n& y$ E$ i2 \- ]7 L& S( X
        cout << "before push\n";6 |1 @; x0 ]& b* x% L
        smile->top.push_back(elem);/ ~1 b8 ^4 |% A1 D" b
        cout << "after push\n";
    ) r$ A" w" q# D4 G2 t9 X1 r}
    : h& M7 z; U0 P$ a% A1 xint Handle::fetch()- h+ ^2 r  B# V0 p+ S
    {2 ~* Q7 I* s- F0 f; x
        return smile->top.back();
    1 P( o$ O  b* z! ^}, J- \, w& A8 z2 L4 |
    int Handle::pop()6 c- b3 d3 `7 N/ u+ Z
    {
    2 I4 s" U& Y: m: g/ H    int n = smile->top.back();% I3 L9 W- V" f6 S
        smile->top.pop_back();
    / [) ~0 w1 s0 ~2 y7 x8 \    return n;$ V6 x* Z, o. f) o
    }; M2 @" N3 o5 ~* d- k" E" N. y/ e* M
    int Handle::count()! u, Y. U+ a- W  [& Y' p; e
    {
    ) f9 _4 N/ B, F# k9 x+ |, V    return smile->top.size();9 a; Y( t  X$ I$ V3 r* k" k
    }0 P& ~/ ]( O+ T

    - ^1 F% J- o" p/ S主函数 main.cpp
    " v5 i. [$ \: m/ ?) z#include<iostream>
    : G$ Q3 O0 K% [% N#include "handle.h"/ C  N: n6 H4 J) Q
    using namespace std;
    + k) A) `7 l9 u" e6 p# a4 ~; v
    - k$ p+ U. c7 P2 Wint main()
    / j4 W! M) q# K' |{! U/ }. F; g5 E/ x
        Handle h;% c: X* I4 F; P( t
        h.initialize();, ~5 ]+ _% A* I* m
        for (int i = 0; i < 10; i++)9 ~4 ~  L# g& Y5 b7 F  L  g  b
        {
    ( h1 Y1 m' t9 ?6 k" Y        h.push(i);. L! x5 u% y$ h# b( H+ v9 r" \" h
            cout << "last element is " << h.fetch() << endl;6 V6 w4 K$ V; x' Y2 E
        }; |( |$ B' q% J: X
        for (int i = 0; i < 10; i++)) \' d* h9 f# B( W8 a1 C9 T
        {: E1 Y* ?  a# a/ d: G& S$ t
            h.pop();  H$ e2 H! d" v+ e) S% Y
        }- e& Z* A: T' ?2 V* p. r5 U5 t+ A

    6 f$ _. C1 T# L* K; O8 g/ W    return 0;
    2 G5 k: I7 {# p2 l, A: r}+ i% ?2 G5 J+ v$ v6 c
    & m$ h/ R: U# H3 R# i& u9 l
    ' u# s) r( C2 @4 M5 h
    8 d) L! Z5 |4 a6 H
    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-8-2 10:56 , Processed in 0.295180 second(s), 57 queries .

    回顶部