天天看点

关于如何读代码

#include<iostream>

  using namespace std;

    int  main()

   {

    cout<<"This  is my first C++ program !"<<endl;

   return 0;

   }

我相信每个学C++的人,首先接触的是这个程序。这是一个最简单的C++程序。就一个main函数,输出的是一句话: This is my first C++ program !   但是回想起 来,我们当初是怎样读这样一个简单的程序的呢?不知道大家怎么读,我一开始是从头读到尾。对于这样简单的程序,我们怎样读都是懂的。只是从头读到尾,这种读法是不科学的,也是不专业的。如果给你一个100行代码的程序或者上千行的,显然顺序读下去是读不懂的。程序不是文章,程序组成程序块才有独立的意义,一行代码一行代码地读是没有意义的。每一句话我们都知道是是什么意思,但是程序在做一件什么事情我们却难以知道。那怎么样才能把代码读懂呢?有一句话说,程序等于算法加数据结构,在现在的软件开发过程中,我们会把一个大的软件或者软件系统划分为一个个功能独立的模块,每一个模块又由一些函数构成,每一个函数里面都包含了算法和数据结构的含义。所以读代码要学会分模块地读,一目十行。比如像上面这个简单的程序,我们只要知道这是一个main函数就可以了,至于函数体里面的内容,不必关心。我们再看它是否有构造函数和函数调用,如果有,只看函数就可以,如果没有就忽略。看前后的功能模块,记住函数之间的调用关系,自顶向下逐步求精,这样我们就知道程序在做什么事情了。最好能够从程序中抽象出算法和数据结构,这样我们会了解到 程序的健壮性和时空复杂度。

               ----------dongjing