课程咨询 :18087159764

  • C++怎么学,好学吗?

    发布:广州C++培训      来源: C++技术网      时间:2016-08-25

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

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

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

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

    //C++版本

    string buffer;

    cout << buffer<

    //C版本

    char buffer[4096];

    printf ("%s\n",buffer);

    哪个更简洁?

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

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

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

    string buffer;cin >> buffer;

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

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

    int a;

    cin >> a;//(正确),想写错都挺难的

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

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

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

    ClassName::FunctionName (Paramtor...);

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

    如何学习C++ ?

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

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

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

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

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

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

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

上一篇:表白代码,你值得拥有

下一篇:C语言基础教程第十四讲:文件相关入门

最新开班日期  |  更多

c++--零基础周末班

c++--零基础周末班

开班日期:6月30日

c++--零基础全日制班

c++--零基础全日制班

开班日期:6月30日

c++--免费训练营

c++--免费训练营

开班日期:6月30日

c++--高薪就业班

c++--高薪就业班

开班日期:6月30日

  • 网址:http://gz.c.tedu.cn     地址:广州市天河北五山路 141 号尚德大厦 627
  • 课程培训电话:18087159764     全国服务监督电话:400-111-8989
  • 服务邮箱 tousu@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56