校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > .net開發(fā):為程式碼加上行號的方法詳解

.net開發(fā):為程式碼加上行號的方法詳解

熱門標簽:手機地圖標注如何刪除 外呼系統(tǒng)代理品牌 怎么給超市做地圖標注入駐店 辦理400電話證件 巫師3為什么地圖標注的財寶沒有 寧波自動外呼系統(tǒng)代理 十堰正規(guī)電銷機器人系統(tǒng) 外呼系統(tǒng)費用一年 世紀佳緣地圖標注怎么去掉

Abstract
若需要將程式碼放進word交報告或做文件時,或許我們會想將程式碼加上行號方便講解,如同博客園顯示程式碼那樣,我們該如何做呢?

Introduction

使用環(huán)境:Visual C++ 9.0 / Visual Studio 2008

一段C++的小程式,可以幫程式碼加上行號后輸出。
以下為引用的內(nèi)容:
map_code_line.cpp / C++

復制代碼 代碼如下:

         /*
         (C) OOMusou 2008

         Filename    : map_code_line.cpp
         Compiler    : Visual C++ 9.0 / Visual Studio 2008
         Description : Demo how to add line number for code
         Release     : 07/18/2008 1.0
         */
         #include iostream>
         #include fstream>
         #include string>
         #include map>
         #include algorithm>
         using namespace std;
         ifstream infile("map_code_line.cpp");
         ofstream outfile("map_code_line_r.cpp");
         struct print_map {
           void operator() (pairint, string> p) {
             cout    p.first " " p.second endl;
             outfile p.first " " p.second endl;
           }
         };
         int main() {
           mapint, string> lines;
           string line;
           int line_num = 1;
           while(getline(infile, line))
           lines[line_num++] = line;
           infile.close();
           for_each(lines.begin(), lines.end(), print_map());
           outfile.close();
         }

執(zhí)行結(jié)果
以下為引用的內(nèi)容:

復制代碼 代碼如下:


         /*
         (C) OOMusou 2008 http://oomusou.cnblogs.com

         Filename    : map_code_line.cpp
         Compiler    : Visual C++ 9.0 / Visual Studio 2008
         Description : Demo how to add line number for code
         Release     : 07/18/2008 1.0
         */
         #include iostream>
         #include fstream>
         #include string>
         #include map>
         #include algorithm>
         using namespace std;
         ifstream infile("map_code_line.cpp");
         ofstream outfile("map_code_line_r.cpp");
         struct print_map {
           void operator() (pairint, string> p) {
             cout    p.first " " p.second endl;
             outfile p.first " " p.second endl;
           }
         };
         int main() {
           mapint, string> lines;
           string line;
           int line_num = 1;
           while(getline(infile, line))
           lines[line_num++] = line;
           infile.close();
           for_each(lines.begin(), lines.end(), print_map());
           outfile.close();
         }


32行
以下為引用的內(nèi)容:

復制代碼 代碼如下:

          while(getline(infile, line))
          lines[line_num++] = line;

是整個程式的關鍵:使用map,key存放行號,value存放每一行的程式碼。而且隨著每一行程式碼的讀入,自動增加行號。

37行
以下為引用的內(nèi)容:

復制代碼 代碼如下:


          for_each(lines.begin(), lines.end(), print_map());

將map內(nèi)容印出,因為map無法配合copy(),只好退而求其次使用for_each()與functor。

20行

以下為引用的內(nèi)容:

復制代碼 代碼如下:

             struct print_map {
          void operator() (pairint, string> p) {
            cout    p.first " " p.second endl;
            outfile p.first " " p.second endl;
          }
        };

配合for_each()的functor,22行的cout可以拿掉,只是方面在螢幕顯示而已。

Conclusion

STL的map是很好用的容器,尤其substring寫法,若index下沒有元素,會自動新增,所以才會有l(wèi)ines[line_number++] = line;這麼漂亮的寫法。

您可能感興趣的文章:
  • dhtmlxGrid 添加行號詳細步驟
  • DataGridView控件顯示行號的正確代碼及分析
  • FLEX 獲取DataGrid行號和列號示例代碼
  • python中使用sys模板和logging模塊獲取行號和函數(shù)名的方法
  • pycharm 使用心得(四)顯示行號
  • Python實現(xiàn)去除代碼前行號的方法
  • MyEclipse刪除網(wǎng)上復制下來的來代碼帶有的行號(正則去除行號)

標簽:山西 牡丹江 嘉興 泰州 景德鎮(zhèn) 天門 通遼

巨人網(wǎng)絡通訊聲明:本文標題《.net開發(fā):為程式碼加上行號的方法詳解》,本文關鍵詞  .net,開發(fā),為,程式,碼加,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 下面列出與本文章《.net開發(fā):為程式碼加上行號的方法詳解》相關的同類信息!
  • 本頁收集關于.net開發(fā):為程式碼加上行號的方法詳解的相關信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 泽库县| 唐海县| 定南县| 武夷山市| 河池市| 金沙县| 谢通门县| 冀州市| 永胜县| 沾化县| 蛟河市| 河西区| 巨野县| 玛多县| 乃东县| 安吉县| 从江县| 斗六市| 增城市| 湾仔区| 临邑县| 浦县| 嘉义县| 陆丰市| 江川县| 疏附县| 武山县| 闸北区| 二连浩特市| 潼南县| 钦州市| 遵化市| 新兴县| 黄浦区| 志丹县| 南靖县| 水城县| 疏附县| 临猗县| 雅江县| 马边|