当前位置:实例文章 » JAVA Web实例» [文章]【C++】总结2

【C++】总结2

发布人:shili8 发布时间:2025-03-06 18:05 阅读次数:0

**C++语言总结**

C++是一种高级编程语言,最初由布莱恩·史密斯(Brian Kernighan)和丹尼斯·里奇(Dennis Ritchie)设计。它是C语言的继承者,并在1985年由Bjarne Stroustrup发明。C++语言提供了面向对象编程、泛型编程等特性,使其成为一种非常强大的编程语言。

**基本语法**

### 变量和数据类型在C++中,变量是用来存储值的空间。每个变量都有一个名称和一个数据类型。C++支持以下几种基本数据类型:

* 整型(int):表示整数值。
* 浮点型(float):表示浮点数值。
* 双精度浮点型(double):表示双精度浮点数值。
* 布尔型(bool):表示布尔值(true或false)。
* 字符型(char):表示单个字符。

cpp// 声明一个整型变量int age =25;

// 声明一个浮点型变量float height =1.75f;

// 声明一个双精度浮点型变量double weight =60.0;

// 声明一个布尔型变量bool isAdmin = true;

// 声明一个字符型变量char name[10] = "John";


### 控制结构控制结构是用来控制程序执行流程的语句。C++支持以下几种控制结构:

* 条件语句(if-else):用于根据条件选择执行不同的代码块。
* 循环语句(for、while、do-while):用于重复执行某段代码。

cpp// 条件语句示例int score =80;
if (score >=90) {
 cout << "Excellent!" << endl;
} else if (score >=70) {
 cout << "Good job!" << endl;
} else {
 cout << "Keep trying..." << endl;
}

// 循环语句示例for (int i =0; i < 5; i++) {
 cout << "Hello, world! " << i << endl;
}


### 函数函数是用来封装某段代码的模块。C++支持以下几种函数:

* 全局函数:定义在全局作用域内的函数。
* 局部函数:定义在函数内部的函数。

cpp// 全局函数示例int add(int a, int b) {
 return a + b;
}

// 局部函数示例void printArray(int arr[], int size) {
 for (int i =0; i < size; i++) {
 cout << arr[i] << " ";
 }
}


### 类和对象类是用来描述某种事物的模板。C++支持以下几种类:

* 自定义类:用户自定义的类。
* 内置类:内置于语言中的类。

cpp// 自定义类示例class Person {
public:
 string name;
 int age;

 void sayHello() {
 cout << "Hello, my name is " << name << " and I'm " << age << " years old." << endl;
 }
};

// 内置类示例Person person;
person.name = "John";
person.age =25;
person.sayHello();


### 继承继承是用来实现类之间关系的机制。C++支持以下几种继承:

* 公共继承:子类继承父类所有成员。
* 私有继承:子类继承父类私有成员。

cpp// 公共继承示例class Animal {
public:
 string name;

 void eat() {
 cout << "I'm eating..." << endl;
 }
};

class Dog : public Animal {
public:
 void bark() {
 cout << "Woof woof!" << endl;
 }
};


### 多态多态是指同一个函数或方法在不同情况下表现出不同的行为。C++支持以下几种多态:

* 函数多态:函数的重载和覆盖。
* 操作符多态:操作符的重载。

cpp// 函数多态示例class Shape {
public:
 virtual void draw() =0;
};

class Circle : public Shape {
public:
 void draw() override {
 cout << "Drawing a circle..." << endl;
 }
};


### 模板模板是用来定义泛型函数或类的机制。C++支持以下几种模板:

* 函数模板:定义泛型函数。
* 类模板:定义泛型类。

cpp// 函数模板示例template <typename T>
T max(T a, T b) {
 return (a > b) ? a : b;
}

// 类模板示例template <typename T>
class Stack {
public:
 void push(T element) {
 // ...
 }

 T pop() {
 // ...
 }
};


### 智能指针智能指针是用来管理动态内存的类。C++支持以下几种智能指针:

* unique_ptr:独占式智能指针。
* shared_ptr:共享式智能指针。

cpp// unique_ptr示例unique_ptr<int> ptr(new int(10));
cout << *ptr << endl;

// shared_ptr示例shared_ptr<int> ptr1(new int(10));
shared_ptr<int> ptr2 = ptr1;
cout << *ptr1 << endl; //10cout << *ptr2 << endl; //10


### lambda表达式lambda表达式是用来定义匿名函数的语法。C++支持以下几种lambda表达式:

* 匿名函数:定义在某个地方但没有名称。
* 捕获变量:捕获外部变量。

cpp// 匿名函数示例auto add = [](int a, int b) { return a + b; };
cout << add(3,4) << endl;

// 捕获变量示例auto print = [x](int y) { cout << x << " " << y << endl; };
print(5); //105


### 变参函数变参函数是用来定义可变参数函数的语法。C++支持以下几种变参函数:

* std::va_list:用于存储可变参数。
* va_start、va_end:用于操作可变参数。

cpp// 变参函数示例void print(int a, int b, ...) {
 va_list args;
 va_start(args, b);
 for (int i =0; i < 3; i++) {
 cout << va_arg(args, int) << " ";
 }
 va_end(args);
}

print(1,2,3,4,5); //123


### std::tuplestd::tuple是用来定义元组的类。C++支持以下几种std::tuple:

* 元组:用于存储多个值。
* std::get:用于获取元组中的元素。

cpp// std::tuple示例std::tuple<int, int, int> tuple(1,2,3);
cout << std::get<0>(tuple) << endl; //1


### std::arraystd::array是用来定义固定大小数组的类。C++支持以下几种std::array:

* 固定大小数组:用于存储多个值。
* std::size、std::data:用于操作数组。

cpp// std::array示例std::array<int,3> arr = {1,2,3};
cout << std::size(arr) << endl; //3


### std::vectorstd::vector是用来定义动态大小数组的类。C++支持以下几种std::vector:

* 动态大小数组:用于存储多个值。
* push_back、pop_back、size、data:用于操作数组。

cpp// std::vector示例std::vector<int> vec = {1,2,3};
vec.push_back(4);
cout << vec.size() << endl; //4


### std::setstd::set是用来定义集合的类。C++支持以下几种std::set:

* 集合:用于存储唯一值。
* insert、erase、find、size:用于操作集合。

cpp// std::set示例std::set<int> set = {1,2,3};
set.insert(4);
cout << set.size() << endl; //4


### std::mapstd::map是用来

相关标签:c++java开发语言
其他信息

其他资源

Top