C++作为一种面向对象的编程语言,具有高效、快速、稳定、安全等特点,被广泛应用于操作系统、数据库、嵌入式系统等领域,在互联网时代下更是被广泛应用于大数据、人工智能、物联网等领域。
一、基础语法
1、数据类型
C++内置的数据类型有基本数据类型和派生数据类型。其中,基本数据类型有int、float、double、char等;派生数据类型有数组、结构体、共用体等。
//数据类型示例
int a=1;
float b=2.0f;
double c=3.0;
char d='a';
2、控制流程
C++语言中的控制流程有:分支语句if-else,三目运算符,循环语句for、while、do-while等。
//控制流程示例
if(a>b){
cout<<"a is greater than b."<<endl;
}
else{
cout<<"b is greater than a."<<endl;
}
for(int i=0;i<10;i++){
cout<<i<<endl;
}
3、函数
C++支持函数的定义和调用,函数可以分为普通函数和成员函数,函数可以有参数和返回值。
//函数示例
int sum(int a,int b){
return a+b;
}
class Person{
public:
int age;
void changeAge(int newAge){
age=newAge;
}
};
二、面向对象
1、类和对象
C++是一种面向对象的语言,类是面向对象的基本概念之一,类包括属性和方法,对象是类实例化之后的结果。
//类和对象示例
class Student{
public:
string name;
int age;
void study(){
cout<<name<<" is studying."<<endl;
}
};
Student s;
s.name="Tom";
s.age=18;
s.study();
2、继承与多态
继承是指在已有的基础上派生出新的类,派生的类称之为子类或派生类,被派生的类称之为父类或基类。多态是指同一类型的对象在不同情况下具有不同的状态和行为。
//继承与多态示例
class Animal{
public:
virtual void sound(){
cout<<"This is an animal."<<endl;
}
};
class Dog: public Animal{
public:
void sound(){
cout<<"Dog is barking."<sound();
3、封装与抽象
C++中的封装是指将类的属性和方法进行封装,只对外暴露有限的接口供使用;抽象是指只关注对象的行为和状态,而不关注其实现,C++中抽象可以通过虚函数和纯虚函数实现。
//封装与抽象示例
class Account{
public:
virtual void withdraw(double amount)=0;
};
class SavingAccount: public Account{
public:
void withdraw(double amount){
cout<<"Withdraw from saving account."<<endl;
}
};
三、STL
STL(Standard Template Library)是C++中的一种标准模板库,包含了常用的容器、算法和迭代器等。
1、容器
C++中常用的容器有vector、list、map、set等,它们分别对应动态数组、链表、映射表和集合等。
//容器示例
vector vec={1,2,3,4,5};
vec.push_back(6);
for(auto it=vec.begin();it!=vec.end();it++){
cout<<*it<<" ";
}
2、算法
C++中常用的算法有sort、find、reverse等,它们分别对应排序、查找和反转等操作。
//算法示例
vector vec={3,2,1,4,5};
sort(vec.begin(),vec.end());
auto it=find(vec.begin(),vec.end(),4);
reverse(vec.begin(),vec.end());
3、迭代器
C++中的迭代器是一种对象,通常用于遍历容器中的元素。
//迭代器示例
vector vec={1,2,3,4,5};
for(auto it=vec.begin();it!=vec.end();it++){
cout<<*it<<" ";
}
通过了解C++的基础语法、面向对象和STL等内容,我们可以更加灵活地应用C++,写出高效、稳定、安全的程序。
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/193576.html