• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            大龍的博客

            常用鏈接

            統計

            最新評論

            設置c++程序的堆棧空間解決棧溢出問題 -- 轉

            程序的靜態數據量大的時候,有時候會出現棧溢出問題,往往是程序還沒運行算法呢,就down掉了,比如你在創建包含大數組的類(或數據)的時候,棧就溢出了。這是由于系統分配給程序的棧空間太小。
            一種方法,就是不要靜態分配,用new動態創建,是從堆中分配的,堆的空間足夠大,不過記得寫析構函數,delete你申請的堆空間。其實這樣也挺方便,類結束的時候會自動調用析構函數釋放空間。養成"不在棧上定義大數組/大對象"的好習慣很重要,否則再大的棧也會被撐爆的。
            當然,如果你不喜歡new,delete的話,還是靜態分配(畢竟靜態分配有很多好處),那么可以通過改變默認棧空間來解決。
             
            LINK的/STACK選項  
              /STACK   :reserve[,commit]  
              reserve:棧總大小  
              commit:程序開始時系統提供的實際內存量  
              缺省:1M,8K  
              參數為0取缺省值  
             
            今天在VC++.NET中運行聚類程序,老是說Stack   OverFlow,  后來才發現是棧空間太小了。
            單單保存100個網頁的數據量就比較大了。

             把堆棧的大小已經設置為:  
              堆棧保留大小為:100000000;  
              堆棧提交大小為:   100000000;  
            就沒問題了。
             
            設置:項目-> 屬性-> 鏈接器-> system-> 堆棧保留大小/堆棧提交大小

            posted on 2010-04-05 21:33 大龍 閱讀(1605) 評論(0)  編輯 收藏 引用

            亚洲精品国产综合久久一线| 亚洲精品乱码久久久久久按摩 | 亚洲精品乱码久久久久久蜜桃 | 久久影视综合亚洲| 久久这里有精品| 日韩久久无码免费毛片软件| 综合久久精品色| …久久精品99久久香蕉国产| 久久亚洲国产成人精品无码区| 中文精品久久久久人妻不卡| 99久久婷婷国产一区二区| 久久久久久久免费视频| 四虎国产精品免费久久久| 免费精品久久久久久中文字幕| 亚洲va国产va天堂va久久| 久久久久无码精品| 97精品伊人久久大香线蕉app| 一本久道久久综合狠狠躁AV| 日韩欧美亚洲综合久久影院d3| 国内精品久久久久久久久电影网| 品成人欧美大片久久国产欧美| 午夜精品久久久久久毛片| 亚洲精品99久久久久中文字幕 | 亚洲国产小视频精品久久久三级 | 国产香蕉久久精品综合网| 欧美综合天天夜夜久久| 亚洲国产欧美国产综合久久| 久久久久香蕉视频| 久久无码人妻精品一区二区三区| 久久这里只有精品久久| 97久久精品国产精品青草| 欧美亚洲色综久久精品国产| 亚洲国产精品无码久久久不卡| 亚洲国产精品一区二区三区久久| 久久99久久无码毛片一区二区| 久久国产精品久久| 久久精品国产亚洲一区二区| 99久久精品日本一区二区免费| 精品久久久久香蕉网| 精品久久777| 99久久无码一区人妻|