一、基本语法
C++语言是一门基于C语言的编程语言,因此C++的基本语法与C语言相似,主要包括以下几个方面:
1. 数据类型
C++的数据类型可以分为基本数据类型和衍生数据类型两种。其中,基本数据类型包括整型、浮点型、字符型、布尔型和空类型,衍生数据类型包括数组、指针、结构体、共用体和枚举类型。
//示例代码:定义一个整型变量和一个指向整型变量的指针 int num = 10; int *ptr = #
2. 控制语句
C++的控制语句包括顺序结构、分支结构和循环结构。其中,常用的分支结构有if语句和switch语句,常用的循环结构有while循环、do-while循环和for循环。
//示例代码:使用for循环输出1~10的数字
for(int i=1;i<=10;i++)
{
cout<<i<<endl;
}
3. 函数
在C++中,可以通过定义函数来实现代码的复用。函数的定义包括函数类型、函数名、参数列表和函数体,其中参数列表可以为空,函数体可以返回一个值。
//示例代码:定义一个函数,返回两个数的和
int sum(int a,int b)
{
return a+b;
}
二、面向对象编程
C++是一门面向对象编程的语言,支持封装、继承和多态等特性。
1. 封装
封装是C++面向对象编程中的一个重要特性,它可以将数据和操作数据的函数封装在一起,实现数据的保护和隐藏,避免数据的不合法访问。
//示例代码:定义一个封装了数据和访问函数的类
class Student {
private:
string name;
int age;
public:
string getName() {
return name;
}
void setName(string n) {
name = n;
}
int getAge() {
return age;
}
void setAge(int a) {
age = a;
}
};
2. 继承
继承是C++面向对象编程的另一个重要特性,它可以通过建立类之间的继承关系,实现代码的重用和灵活性的提高。
//示例代码:定义一个继承自Student类的Undergraduate类
class Undergraduate: public Student {
private:
string major;
public:
string getMajor() {
return major;
}
void setMajor(string m) {
major = m;
}
};
3. 多态
多态是C++面向对象编程的另一个重要特性,它可以实现函数的重载和虚函数的运行时绑定,提高程序的灵活性和可扩展性。
//示例代码1:实现函数的重载
int sum(int a,int b)
{
return a+b;
}
double sum(double a,double b)
{
return a+b;
}
//示例代码2:定义一个含有虚函数的类
class Shape {
public:
virtual double area() {
return 0;
}
};
class Circle: public Shape {
private:
double r;
public:
Circle(double radius): r(radius) {}
virtual double area() {
return r*r*3.14;
}
};
class Rectangle: public Shape {
private:
double x,y;
public:
Rectangle(double a,double b): x(a),y(b) {}
virtual double area() {
return x*y;
}
};
三、STL库
STL(Standard Template Library)是C++标准库中的一个重要组成部分,提供了许多功能强大的容器类和算法,可以大大提高程序开发的效率。
1. 容器类
容器类是STL库中的一个重要概念,包括vector、list、map等多种类型,每种类型都有自己的特点和适用范围。
//示例代码:定义一个vector容器,并将元素插入其中 vector v; v.push_back(1); v.push_back(2); v.push_back(3);
2. 算法
算法是STL库中的另一个重要概念,包括排序、查找、复制、统计等多种操作,可以轻松实现对容器的操作。
//示例代码:使用算法对vector容器进行排序 vector v; v.push_back(3); v.push_back(2); v.push_back(1); sort(v.begin(),v.end());
四、文件操作
C++支持对文件进行读写操作,可以实现对外部文件的读取和写入。
1. 文件读取
文件读取是C++操作文件的一种常用方式,可以打开文件并读取其中的内容。
//示例代码:打开文件,并读取其中的内容
ifstream in("test.txt");
if(!in.is_open()) {
cout<<"Open file failed!"<<endl;
} else {
string s;
while(getline(in,s)) {
cout<<s<<endl;
}
}
in.close();
2. 文件写入
文件写入是C++操作文件的另一种常用方式,可以打开文件并将内容写入其中。
//示例代码:打开文件,并将内容写入其中
ofstream out("test.txt",ofstream::app);
if(!out.is_open()) {
cout<<"Open file failed!"<<endl;
} else {
out<<"Hello world!";
}
out.close();
五、异常处理
C++支持异常处理机制,可以通过捕获异常和抛出异常来处理程序中出现的异常情况。
1. 捕获异常
捕获异常是C++中对异常进行处理的一种方法,可以通过try-catch语句捕获可能发生异常的代码块,并进行处理。
//示例代码:捕获异常并进行处理
try {
int a,b;
cin>>a>>b;
if(b==0) {
throw "Divisor can not be zero!";
} else {
cout<<a/b<<endl;
}
} catch(const char* e) {
cout<<e<<endl;
}
2. 抛出异常
抛出异常是C++中对异常进行处理的另一种方法,可以通过throw语句抛出异常,并在程序的其他位置进行处理。
//示例代码:抛出异常并在另一个函数中进行处理
int divide(int a,int b) {
if(b==0) {
throw "Divisor can not be zero!";
} else {
return a/b;
}
}int main() {
try {
int a,b;
cin>>a>>b;
cout<原创文章,作者:JWLDF,如若转载,请注明出处:https://www.506064.com/n/366254.html
微信扫一扫
支付宝扫一扫