QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 5565|回复: 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.h1 @% `1 }$ b5 O  ?7 I  [! K
    #ifndef _HANDLE_H
    $ N/ y  p  m1 S; Y0 p9 i9 C#define _HANDLE_H
    8 S4 A) y, k& [6 m- |( R# ~/ Z- a! u6 L8 r$ G
    class Handle{
    / K: c. @; j, Z( Q# B9 h    struct StackOfInt;
    ( B5 o! [; f* B7 G- [* H    StackOfInt* smile;
    7 P2 g! O+ W5 m' B. Jpublic:
    $ Y" {4 v* B9 s    void initialize();- f8 ~2 d) k; W9 _% h9 t
        void cleanup();, h$ V* W$ Q: ]" U& A' S8 D
        void push(int elem);
    6 b. j# |6 G$ g5 k3 [    int fetch();0 E" y1 i+ u! J5 v  }: s; t# }
        int pop();
    , t9 [* {) @* x8 g    int count();
    ( e% i& [- ^% W8 d' B$ c4 b, g};
      ^3 E8 k# U( J5 q3 V4 c# \8 ~2 k
    9 k, h% Q, V2 N! n/ j3 ~#endif//_HANDLE_H
    ( |, B- r: L0 V5 o$ o- X  p* N  J9 {& \# m
    类class的函数定义
    $ u( j& X' R8 Z- {$ N3 D$ K) H#include<iostream>$ T, U% s: g% r
    #include<vector>
    4 a2 E: z* Z% F% V$ G( X- [#include "handle.h"6 H$ z  P" k. R
    using namespace std;
    / [% n& l( |& r- I6 ^5 U3 [2 U9 J) I* O; T, A
    struct Handle::StackOfInt{0 r- o2 R- g- V9 u1 J( l' A( _0 u
        vector<int> top;+ m' u3 E: ^- y
    };
    ) ?" z; k+ g" i3 |
    ) H% g) L% u/ @* pvoid Handle::initialize()3 f2 t  b1 M9 N/ J0 k' G# C- k. {
    {
    - S8 F; s+ n% \5 e! Z$ ]0 c    StackOfInt* smile = new StackOfInt;
    ( L: U/ U% h/ c- h3 t    smile->top.reserve(100);3 u! c7 z/ B% \. g, h9 r
        cout << smile->top.capacity() << endl;5 D2 h# n& l7 j8 @
    }9 j% v- _& N3 o; r9 h
    " f9 D4 H8 y; h" C7 }. m
    void Handle::cleanup(); {5 k, K+ S+ E7 h. r! ]
    {; F+ \3 [6 Q/ Q- [4 {4 r
        delete smile;7 ~' x/ q4 _# Y7 W+ g: [' m
    }
    9 C5 Y: a7 u% t' f  l8 P" Q  u
    4 X/ x' g% n( B/ U. g  |/ tvoid Handle::push(int elem)) i, o* h3 G0 o9 M+ N
    {* A* h8 |; K& e8 E. p# ^8 r
        cout << "before push\n";
    ( @( V9 T/ r" O  x5 z" y; C0 o8 m    smile->top.push_back(elem);- M* v6 z9 G4 A! ~
        cout << "after push\n";
    3 }" z1 L7 f( l/ c+ Z" \, X}
    # P" ^0 D$ I8 q& Tint Handle::fetch()5 p/ b( n3 x2 D( \2 ?
    {  {% i: M# i. Q- \) D1 ?
        return smile->top.back();
    " d8 k, o6 P6 D! c# N}3 K$ G! k6 |! }
    int Handle::pop()) q2 T3 I* @% u. I0 V
    {4 c% P! x- P, m( b
        int n = smile->top.back();2 d; R% g" F) _5 l& [/ {1 x
        smile->top.pop_back();
    ! Q# R# _; Y9 {- t) Q2 `+ M, \    return n;
    7 ^6 V6 v8 C8 }4 `" h8 H}1 G' |: B& t" [0 a; @
    int Handle::count()6 L5 Q  t* u( x1 |" K* V5 Y4 P! E8 f0 T" P
    {
    0 W- {$ M+ \) j" z# p    return smile->top.size();
    # F3 A1 \  ?/ C( n, z/ A}
    ; e, k- Q& c5 a  s% [" T
    & M0 {8 c; x2 B$ H3 {# ^主函数 main.cpp
    , i$ X' I  Y7 X, s9 O#include<iostream>& l* v; W+ {; t. Y
    #include "handle.h"2 b2 L8 S/ E/ q. L6 R
    using namespace std;
    4 a: {8 @8 |9 k2 ~5 c3 C, A, f8 I$ _
    ; c! O6 M4 m  Zint main()0 u) _. w2 U0 X" [# O
    {
      e7 F* ?3 l1 Q    Handle h;
      }" d& b7 n- D    h.initialize();
    9 m8 {, _: Q7 w    for (int i = 0; i < 10; i++)
    ' }' U$ C7 D7 R, w3 \$ `    {
    7 u7 d1 [! f# Z' p  L        h.push(i);
    : F- N0 S- s4 A- F# X        cout << "last element is " << h.fetch() << endl;+ i0 I+ q" x3 s; Y2 ?1 h
        }
    2 V, W# Z, ]& M6 L5 H5 y6 ^6 ]    for (int i = 0; i < 10; i++); w2 q1 c; `# U0 G) o& E* l
        {& ?) U0 a: t8 z* q$ V* x5 h
            h.pop();6 C- I+ ~, U  F: Z4 s) m
        }
    / E5 i9 L- Z) z4 r( B% w
    . P8 ?1 ^" e+ O$ G  O; K    return 0;3 U9 |+ _2 j  x- ~
    }2 d: G$ s% ^7 [5 @$ L6 u- u
    ' n5 X2 I& E: s& b: F
      L8 w( {" ^) v& L, y5 C

    5 e" N6 w- ]6 H4 a1 M
    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-6-9 15:56 , Processed in 0.418705 second(s), 57 queries .

    回顶部