所在的位置: c++ >> 基本简介 >> C怎么学,好学吗

C怎么学,好学吗

如何学习C++,C++怎么学?本文开始介绍我是如何从新手学起的

  有很多人都说C++好难学啊,比如说:“为什么用cout啊?printf不是挺好的嘛?还用cin,scanf也不差啊!还要写什么类啊?结构体不行嘛?”,东西太多了,感觉太难了,本文简单介绍一下原因和方法(个人观点,如有错误请指教):

  

  为什么用cout啊?printf不是挺好的嘛?

  为啥用cout?有很多时候,我们用的是string,当然很多人会问我:“为啥用string?”,我的回答就是因为它方便操作,并且不用去计算大小,比如我写了一个界面,用来保存用户的输入,当然不会string的话就直接定义一个buffer,比如charbuffer[];如果用户只输入一个字符,,你还是分配那么大的空间,是不是浪费了?但是如果你会用string呢?那么直接一行代码搞定:stringbuffer。代码只需要一行,就不用手动分配空间,还不用担心溢出。然后因为我们用了string,都是流数据啊,所以coutbufferendl;搞定了。。。如果你用了charbuffer[];那么就要printf(%s\n,buffer);比较一下:

  //C++版本

  stringbuffer;

  coutbufferendl;

  //C版本

  charbuffer[];

  printf(%s\n,buffer);

  哪个更简洁?

  肯定是cout啊,,并且还有好处就是我不需要知道他是什么格式,printf还需要%s%d等等,,控制输出。麻烦多了。

  

  

  为什么用cin啊?scanf不是挺好的嘛?

这个问题也好回答,比如:“charbuffer[10];scanf(%s,buffer);”如果不小心输入多了,直接程序挂掉,程序不稳定,但是如果这样写:

  

  stringbuffer;cinbuffer;

  这样子就不会出现因为输入多了导致内存不足而溢出的问题了,并且代码量也少啊!!!

  最重要的是,scanf的格式写起来容易错,编译器也不容易检测,比如inta;scanf(%d,a);和scanf(%s,a)编译器无法发现的,如果我们采用C++的写法就没问题了,输入错了编译器直接告诉你了;

  inta;

  cina;//(正确),想写错都挺难的

  

  

  为什么写什么类啊?结构体不是挺好的嘛?

这个问题更好回答,我就问你如果你写了一个程序,包含了个结构体,每个结构体都有自己的操作函数,你怎么办?每用一次函数就去查一次定义嘛?当然你可以用代码提示工具,,当你看到了密密麻麻的代码提示的时候,你知道哪个是你需要的函数嘛?

  

  但是如果你有代码提示工具,你还用了类,就实现了:“拉帮结派”的效果,需要哪个类的哪个函数直接

  ClassName::FunctionName(Paramtor...);

  这样的格式就可以了,代码提示工具会在你输入到了ClassName::自动枚举当前类的所有函数,可能有十几个函数,但是没有类的话,代码提供工具给你显示几十个函数让你去寻找你的目标函数,一不小心就找错。面对这个问题你会选择抛弃类吗?

  

  如何学习C++?

  这个问题我也不知道该怎么学习,其实感觉这些东西没有什么的,你需要把C++理解成一个工具,如果你学习过C语言,那么就相当于你以前是开夏利的,现在学习C++,好比你是开着现代呢,差距就是开车的感觉不同,夏利能跑到km/h很费力,现代跑很轻松。。所以说别的都一样,多了点功能。不用害怕。

  第一步:完成C++转化,cout代替printf,cin代替scanf,学会使用class,以class为主,struct为辅。

  第二步:开始写东西,比如自己写一个学生管理系统。(不必参考书上的代码,自己写,否则无法体会到私有变量和公有变量的差距,私有函数和公有函数的差距)。

  第三步:接触Qt,感觉一下什么是比较完善的封装机制。同时你可以学习写带界面的东西了。自己靠想象力创造。

  第四步:开始学习socket,进军互联网,相信你可以的。

  第五步。。。。我也不知道,我也没到这。。。

  

  最后吧,给大家一个建议,就是按照自己的兴趣学习。多写代码。









































最好的治疗白癜风的医院
白癜风治疗医院



转载请注明:http://www.nydjfy.com/jbjj/2717.html

  • 上一篇文章:
  •   
  • 下一篇文章: