QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5614|回复: 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
    1 M; f' e7 J& e4 O+ W6 M7 H#ifndef _HANDLE_H6 F, y6 x; C& L
    #define _HANDLE_H: X# m4 Y0 H9 S9 N+ ^

    + k( `0 J4 _" B2 ^! gclass Handle{
    # j/ x6 T% m* q) c0 U3 c3 p9 x    struct StackOfInt;
    " d% I" m  b% I/ \1 t7 q    StackOfInt* smile;9 i7 I8 w4 c" G. B) J8 t( M
    public:
    8 C* f: u" X: L: p$ T$ a; t1 ?    void initialize();
    # ?) y9 P, c! P+ V    void cleanup();1 ?- L' ?+ J# R* \# U. [/ J7 z; J
        void push(int elem);  d1 w7 q  O% p
        int fetch();
    $ B' e; e2 E; W) K2 P- K    int pop();8 h) r1 W" {6 t- o6 B$ z8 G* ^4 |6 S
        int count();
    # P4 f0 p9 f' ?9 o) n2 A- q};
    8 W) C6 U5 W3 a  T/ d8 D
    1 X" z% m5 h6 P5 l# e( N; G1 H#endif//_HANDLE_H1 T: H  u$ `6 B+ t% Z
    0 o& S6 i0 k. G5 P3 ~- @# C
    类class的函数定义# i4 P  ~! r( @/ V! f1 p
    #include<iostream>4 W) P+ P' ~; w% C8 v
    #include<vector>4 f- p' m1 q' A3 q4 A+ Q
    #include "handle.h"
    + C8 a8 Z" d9 Y7 N9 Iusing namespace std;
    ( u; @) C% R( J" s# S
    2 k* n% A+ _2 J2 W& }9 wstruct Handle::StackOfInt{
    1 C3 l" t; F1 {7 B9 W3 a    vector<int> top;- K6 I8 }9 [- e) B/ N* d
    };
      p# l2 }( L1 o7 Y7 C5 E- `: {0 V+ a% q
    void Handle::initialize()" r8 G; E- v! x& }% W
    {: h) m/ X1 N% K5 k' H7 x1 ?
        StackOfInt* smile = new StackOfInt;, w% C# _) o7 {
        smile->top.reserve(100);( U6 g; z$ B; B& G! F& `& G" o
        cout << smile->top.capacity() << endl;
    6 A. M4 L: y' j* m! v8 [- K2 e7 \}: r( O* h4 F8 E; G" h
    ; a7 g2 `& x0 B
    void Handle::cleanup()
    ' t0 n: L1 |+ Q2 `/ n2 }4 L$ N{0 ^& R: E+ J4 V+ P5 k! ?
        delete smile;0 ?0 @# D7 P: R) K
    }
      A* i' ?& r1 \$ C: b! i
    ) j( r5 `+ I1 k& p# U& Tvoid Handle::push(int elem)
    , U7 K' ?% Z! f6 b' Z{
    " p* W% p. ~8 M1 O    cout << "before push\n";
    % S' C, c% N: |- M2 c    smile->top.push_back(elem);
    4 J$ B# r$ }2 D    cout << "after push\n";/ J' i' K8 O& S2 u- J# A, I
    }
    ! L4 x  D" \- G2 g. y, ?0 rint Handle::fetch()7 Q. Q1 Z/ L( l' J
    {
    7 c4 ?; F7 O0 c+ j5 m( U    return smile->top.back();3 p" F! w; B0 s3 h
    }' q0 O. q7 C- }3 V0 C& j
    int Handle::pop()
    ( S. V, m5 X9 r5 g{  b  }) @" {) B# Q! i
        int n = smile->top.back();
    ) p, U1 |1 ^9 q6 l  g" B    smile->top.pop_back();
    : [  j; s: a9 P    return n;
    7 A8 d8 |4 s: h5 ]8 ?}
    ; t; g: P* G  |/ A1 ]int Handle::count()
    9 y+ t! @% R0 o. S5 S{
    ! @. C' H! Y9 n0 l    return smile->top.size();+ A( }) Y/ j  V2 `% X3 P
    }% A  ^  e1 N: T  ^) }: [' N6 U
    # R2 `: y9 ~6 N1 g
    主函数 main.cpp; R1 r8 ~! a2 v9 j4 N8 \4 I! {; {
    #include<iostream>, L. u- c$ }5 G/ C2 l
    #include "handle.h"" x* r, @& k0 d$ \* M
    using namespace std;
      J& l! p) C, z$ M8 C7 {1 U8 R) A9 Q! y$ j
    int main()
    1 k# N! }: f! L) M$ R( A8 T{
    - i- m" \+ ]) [+ }* }    Handle h;
    ) }+ h; p7 U4 m& U) m    h.initialize();( a8 p/ j8 a( s0 T  e
        for (int i = 0; i < 10; i++)0 m7 S, E1 {; b" S- L9 d
        {( U3 H: c4 N5 \9 T5 I0 B
            h.push(i);$ u. m7 t2 x5 M5 B( ~3 Y
            cout << "last element is " << h.fetch() << endl;
    2 \' L" I3 s9 Q/ ~; j+ M0 I    }, H' o+ v/ g8 N( {  \
        for (int i = 0; i < 10; i++)/ z2 t% X  x! X( f/ G
        {' \+ J% v1 b" g* Q/ U5 u
            h.pop();* z( X* `# S6 w% O
        }
    1 }+ Y. `4 H. [6 G- R
      F/ G: Z6 I5 n/ ^6 u    return 0;9 n% \8 Q0 d' O8 e
    }
    - R5 z9 r3 Y. J7 @% d3 _; ~5 I! E
    : l1 j: b5 ~0 L: a7 L8 I* o' b+ H* @% ?1 q' Y4 H
    ( c3 y7 I& J( Q: g# ?  V
    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-30 09:33 , Processed in 0.947741 second(s), 57 queries .

    回顶部