易截截图软件、单文件、免安装、纯绿色、仅160KB

简述C和C++程序员学习历程

一家之言,欢迎拍砖哈。
  1、可以考虑先学习C.
  大多数时候,我们学习语言的目的,不是为了成为一个语言专家,而是希望成为一个解决问题的专家。做一个有用的程序员,做一个赚钱的程序员。我们的价值,将体现在客户价值上,而不是语言写得好不好看。
  C++是C的一个面向对象的解释,C++为C扩充了大规模工程应用,复杂的系统结构的组织和掌控方法,但是,我认为,C++骨子里还是C的。
  毕竟,解决具体问题,每个函数内部,都是用C的方式写程序,还是面向过程的。
  因此,想要学习好C++,我的建议,先学习C,先学解决问题的能力,再讨论解决大问题的能力。就是先学习怎么走路,再学习怎么跑步。
  2、学习C的过程中,一定要理解结构化编程思维。
  为什么呢,我前面有文章说过,软件语言的发展过程,就是一个数据私有化的过程,大型工程应用,强调高内聚,低耦合,模块化设计,保持代码最大的灵活性和安全性。
这是现代工程化开发的核心和灵魂。
  因此,利用C这门语言入门,借此理解结构化开发思维,可以说是个很方便的路子。因为C的函数,本来就是为重用做准备的。同时,全局变量和cpp内部私有变量的差别,其使用原则,这些都能学到很多结构化开发思维。
  3、开始学习C++
  C++不难学的,很多人觉得C++难学,其实是因为它在C之外,又提供了很多的概念,尤其是对象,很难以理解。
  不过我经过这么多年,把这个问题反而看淡了,我认为面向对象相对面向过程,仅仅是结构化程序设计的一个具体体现,是编译器提供手段,强迫程序员必须遵循数据私有化的一个实例,C++和C的关系,最核心的莫过于此。
  现在我们回到C再看看,如果我们把一个全局变量,写到一个cpp里面,并且在对应的h文件中不声明,它是不是就只有这个模块可以使用?它是不是就是私有变量,以这个理解,类能明白了吗?
  4、学习C++的深入技巧
  C++在类的基础上,经过这么多年的发展,其实提供了很多深入的概念,看起来很复杂,其实我看也很简单。比如模板,我的理解就是“类的类”,大家说是不是?
  既然模板理解了,STL,ATL这些,静态模板库,动态模板库,还难理解吗?就是一大堆类的类,可以借此实现很多应用中需要的类,不需要程序员再自己写而已。
  ok,STL都理解了,泛型开发还难吗?所谓泛型开发,其实就是我做一个模板,来定义一套算法规则,但是呢,我希望这个算法规则,能进一步抽象,对核心


相关文档:

C++中使用sqlite

#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include ".\sqlite3_lib\sqlite3.h"
 
static int _callback_exec(void * notused,int argc, char ** argv, char ** aszColName)
{
    int i;
    for ( i=0; i<argc; i++ )
   ......

Delphi 与 C/C++ 数据类型对照表

Delphi 与 C/C++ 数据类型对照表
Delphi数据类型C/C++
ShorInt
8位有符号整数
char
Byte
8位无符号整数
BYTE,unsigned short
SmallInt
16位有符号整数
short
Word
16位无符号整数
unsigned short
Integer,LongInt
32位有符号整数
int,long
Cardinal,LongWord/DWORD
32位无符号整数
unsigned long
Int6 ......

使用vc++ 6.0制作dll,并在java程序中使用(转)


雖然JAVA的程式都必須在JAVA的虛擬機器上執行,但是我們可以在這部機器中打一個洞,讓JAVA程式可以直接溝通實際的機器
JNI是一種讓JAVA程式可以外接外部程式的一種機制,讓JAVA程式更具有&# ......

C文件操作与fstream读取文本文件的效率比较

这几天由于要读取较大的文本文件,所以就比较了一下两者之间的效率问题。 所要读取的文本文件结构为每行由5个数组成,int int int float int,测试的文件有33W行,大小为9M。现在要将其读到一个cube结构体里面去,结构体有5个成员变量与之对应。 两种操作的代码如下 start = clock();
    ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号