新手学C++语言,总要的是思维方式

阅读:101 责任编辑:SEO小编 来源:网友推荐

 新手学C++语言,总要的是思维方式

3.jpg

  很多人想学习C/C++不知道怎么入手,对于新手来说这确实是一个棘手的问题,其实C语言可能不难,自学C++的时候,就会遇到各种的问题,遇到的问题不解决,就会一个堆积一个,恶性循环。关键是还没人指点,得不到解决。学习是一个由浅到深的过程,那我们该怎么学习C++呢?下面小编带领大家了解C++学习过程的奥妙。

  首先,C++面向对象式的编程对开发者隐藏了很多细节,而面向过程的思维方式是一下子不能适应这抽象的思维方式。先把C语言打扎实了,着手练习用C语言实现各种常见算法和各个课后习题,等到算法研究了些时候,慢慢的不再代码注意细节(细节已达到编码时随手可写出的程度)之后,再来看C++语言,顶多几天就能适应,完全可以像学C语言一样的容易,那时可深入学习C++。

C++有人说不难学,有人说很难学,作为一种开发工具,至少入门是很简单的。

 

学习C++要先学习基本语法,了解他们怎么使用:

检查文件是否成功打开

ifstream infile;
infile.open("scores.dat")
if (infile)
  //...

#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
int main()
{
    ifstream infile;
    ofstream outfile;
    infile.open("in.txt");
    outfile.open("out.txt");
    int num1,num2,num3=0;
    if(infile && outfile)
    {

        while(infile >> num1 >> num2 >> num3){
            outfile << setw(2)<< num1<<" "<<num2<<" "<<num3<<" "<<num1+num2+num3<<endl;
        }
    }
    infile.close();
    outfile.close();
    return 0;
}

常量

C++中的const变量能在任何常数可以出现的地方使用,例如数组的大小、case标号中的表达式。

const int Size = 100;
float a[Size];

bool data type

C++新增bool类型,取值true 或false。用来表示真假。
所有的关系操作符、相等操作符和逻辑操作符现在都
产生bool类型的结果值,而不是int型。
在需要bool类型的地方,整数和指针表达式仍然是允
许的
默认情况下,bool表达式输出时真值输出1,假值输出0.
操作符boolalpha可用来将bool表达式输出或输入为false 或true的形式。
操作符noboolalpha可用来将bool表达式输出或输入0或1的形式。

bool flag;
flag = (3<5);
cout<<flag<<'\n';
cout<<boolalpha<<flag<<'\n';

1
true

Structure

C++中的结构体和C语言结构体不同。定义结构体变量时可以不加struct关键字

struct Point{
  double x,y;
};
Point p1,p2;

C++中的结构体除了包含数据成员,还可以包含函数。

struct Point{
  double x,y;
  void setVal(double,double);
};
p.x = 3.14159;
p.y = 0.0;
p.setVal(4.11,-13.090);

在C++中,类和结构的唯一区别是缺省情况下,结构中的所有东西都是Public而类中的所有东西都是Private的.

string 类型

C++提供string类型来替代C语言中以null为结尾的char数组。
使用string类型必须包含头文件string
有了string类型,程序员不再需要关心存储的分配,也无需处理复杂的null结束字符,这些操作将由系统自动处理。
实例:

#include<string>
using namespace std;
string s1;
string s2="Bravo";
string s3=s2;
string s4(10,'x');

变量s1,已经定义但没有进行初始化, 默认值为空串
变量s2的初始值是C风格的字符串“Bravo”
变量s3用s2初始化,因此s2和s3都代表字符串Bravo
变量s4的初始化为10个x。

....

  接下来C++可以从《C++编程思想》开始,学习基本语法和面向对象程序设计思想。然后如果有项目可以跟着项目学习,借鉴前辈的经验。如果没有项目则可以借鉴书籍,例如《深入浅出MFC》等,通过一段时间的演练,相信对抽象,封装,多态,继承等就会有较深的认识了。然后可以接触下《C++ primer》,《Effective C++》,《More Effective C++》等书,借鉴大家的经验,修正自身的一些毛病和问题。再往后就可以了解下设计模式相关的一些书籍,然后在实践中靠自己多积累了。

  不必为C++的某个语法问题而慌乱,不必为不懂C++某项技术而迷茫,选择一个领域,选择一个范式,专注于C++的一个子集。在此过程中,努力去领悟C++编程的思想,一旦顿悟定将妙用无穷。

本文标签: C++语言

图文推荐