zoukankan      html  css  js  c++  java
  • 各种问题

    inline

    在c++中,为了解决频繁调用小函数而导致占用大量消耗栈空间而引起爆栈等的问题,

    所以引入inline ,表示内联函数。

    栈空间就是放置程序局部数据的一个内存空间。

    如:

    函数死循环递归的最后结果就是栈内存空间枯竭。

    限制:不能对复杂的结构控制语句 while switch等或者自己内部调用自己的函数不能使用它。

       只能针对那些简单的函数。

    结构体

    结构体初始化时必须注意,一定要在给它定义的时候初始化,不然就会出现各种乱七八糟的错误,

    struct node{
     long l,r,lmax,rmax,sum;
    }
    ......
    inline void query(long p,long l,long r){
    ......
    node a={0,0,inf,inf,inf,inf};
    ......
    }

    而不能

    struct node{
        long l,r,lmax,rmax,sum;
    }
    ......
    node a;
    inline void init(){
       a.rmax=inf,a.lmax=inf; 
    }
    inline void query(long p,long l,long r){
    ......
    init();
    ......
    }

    结构体还有好多其他不太行的初始化,不止上面这种错误

    所以,以后还是要把结构体定义的时候就直接初始化 node a={0,inf......}

  • 相关阅读:
    求第N个素数
    HDU1568
    HDU1003 DP
    POJ 1016 模拟字符串
    POJ 3321 树状数组(+dfs+重新建树)
    UVA12532 线段树(单点更新,区间求乘积的正负)
    POJ2488 dfs
    POJ 1195 二维树状数组
    HDU 4006 优先队列
    优先队列
  • 原文地址:https://www.cnblogs.com/yuzhe123/p/13366158.html
Copyright © 2011-2022 走看看