C++ 基础知识概述
C++ 是一种高效、灵活的编程语言,结合了面向过程与面向对象的特性,广泛应用于系统开发、游戏引擎和高性能计算领域。以下为核心知识点:
1. 程序结构
#include <iostream> // 引入输入输出库
using namespace std; // 使用标准命名空间
int main() { // 主函数入口
cout << "Hello, C++!" << endl; // 输出语句
return 0; // 程序正常结束
}
#include:头文件引入main():程序执行的起点cout:标准输出流(需<iostream>)endl:换行符
2. 基本数据类型与变量
| 类型 | 说明 | 示例 |
|---|---|---|
int | 整型 | int age = 25; |
float | 单精度浮点型 | float pi = 3.14; |
double | 双精度浮点型 | double score = 98.5; |
char | 字符型 | char grade = 'A'; |
bool | 布尔型(true/false) | bool isValid = true; |
3. 运算符
- 算术运算符:
+,-,*,/,%(取模) - 关系运算符:
==,!=,>,<,>=,<= - 逻辑运算符:
&&(与),||(或),!(非)
4. 控制结构
条件语句
int score = 85;
if (score >= 90) {
cout << "优秀";
} else if (score >= 60) {
cout << "及格";
} else {
cout << "不及格";
}
循环语句
// for 循环
for (int i = 0; i < 5; i++) {
cout << i << " ";
}
// while 循环
int j = 0;
while (j < 3) {
cout << j << " ";
j++;
}
5. 函数
// 函数定义:计算两数之和
int add(int a, int b) {
return a + b;
}
int main() {
int result = add(3, 7); // 调用函数
cout << "结果:" << result; // 输出 10
return 0;
}
- 参数传递:默认值传递(可改为引用传递
int&) - 返回值:通过
return返回结果
6. 面向对象基础
类与对象
class Student { // 定义类
public: // 访问修饰符
string name; // 成员变量
int age;
// 成员函数
void display() {
cout << name << ", " << age << "岁";
}
};
int main() {
Student stu1; // 创建对象
stu1.name = "张三"; // 访问成员
stu1.age = 20;
stu1.display(); // 调用方法
return 0;
}
- 封装:通过
public/private控制访问权限 - 构造函数:初始化对象(如
Student() : name(""), age(0) {})
7. 指针与内存管理
int num = 10;
int* ptr = # // ptr 指向 num 的地址
cout << *ptr; // 输出 10(解引用)
// 动态内存分配
int* arr = new int[5]; // 分配数组
delete[] arr; // 释放内存
- 关键点:避免内存泄漏(及时
delete)
8. 标准模板库(STL)常用组件
- 向量(
vector):动态数组vector<int> nums = {1, 2, 3}; nums.push_back(4); // 添加元素 - 字符串(
string):string str = "C++"; str += " is powerful!"; // 字符串拼接
学习建议
- 环境搭建:安装编译器(如 GCC)或 IDE(如 Visual Studio)
- 练习:从简单算法(如排序)到小项目(如计算器)逐步深入
- 资源推荐:
- 书籍:《C++ Primer》《Effective C++》
- 在线:cplusplus.com、LeetCode 刷题
提示:C++ 的威力在于对内存和硬件的精细控制,但需谨慎处理指针和资源管理!
C++ 基础知识概述
C++ 是一种高效、灵活的编程语言,结合了面向过程与面向对象的特性,广泛应用于系统开发、游戏引擎和高性能计算领域。以下为核心知识点:
1. 程序结构
#include <iostream> // 引入输入输出库
using namespace std; // 使用标准命名空间
int main() { // 主函数入口
cout << "Hello, C++!" << endl; // 输出语句
return 0; // 程序正常结束
}
#include:头文件引入main():程序执行的起点cout:标准输出流(需<iostream>)endl:换行符
2. 基本数据类型与变量
| 类型 | 说明 | 示例 |
|---|---|---|
int | 整型 | int age = 25; |
float | 单精度浮点型 | float pi = 3.14; |
double | 双精度浮点型 | double score = 98.5; |
char | 字符型 | char grade = 'A'; |
bool | 布尔型(true/false) | bool isValid = true; |
3. 运算符
- 算术运算符:
+,-,*,/,%(取模) - 关系运算符:
==,!=,>,<,>=,<= - 逻辑运算符:
&&(与),||(或),!(非)
4. 控制结构
条件语句
int score = 85;
if (score >= 90) {
cout << "优秀";
} else if (score >= 60) {
cout << "及格";
} else {
cout << "不及格";
}
循环语句
// for 循环
for (int i = 0; i < 5; i++) {
cout << i << " ";
}
// while 循环
int j = 0;
while (j < 3) {
cout << j << " ";
j++;
}
5. 函数
// 函数定义:计算两数之和
int add(int a, int b) {
return a + b;
}
int main() {
int result = add(3, 7); // 调用函数
cout << "结果:" << result; // 输出 10
return 0;
}
- 参数传递:默认值传递(可改为引用传递
int&) - 返回值:通过
return返回结果
6. 面向对象基础
类与对象
class Student { // 定义类
public: // 访问修饰符
string name; // 成员变量
int age;
// 成员函数
void display() {
cout << name << ", " << age << "岁";
}
};
int main() {
Student stu1; // 创建对象
stu1.name = "张三"; // 访问成员
stu1.age = 20;
stu1.display(); // 调用方法
return 0;
}
- 封装:通过
public/private控制访问权限 - 构造函数:初始化对象(如
Student() : name(""), age(0) {})
7. 指针与内存管理
int num = 10;
int* ptr = # // ptr 指向 num 的地址
cout << *ptr; // 输出 10(解引用)
// 动态内存分配
int* arr = new int[5]; // 分配数组
delete[] arr; // 释放内存
- 关键点:避免内存泄漏(及时
delete)
8. 标准模板库(STL)常用组件
- 向量(
vector):动态数组vector<int> nums = {1, 2, 3}; nums.push_back(4); // 添加元素 - 字符串(
string):string str = "C++"; str += " is powerful!"; // 字符串拼接
学习建议
- 环境搭建:安装编译器(如 GCC)或 IDE(如 Visual Studio)
- 练习:从简单算法(如排序)到小项目(如计算器)逐步深入
- 资源推荐:
- 书籍:《C++ Primer》《Effective C++》
- 在线:cplusplus.com、LeetCode 刷题
提示:C++ 的威力在于对内存和硬件的精细控制,但需谨慎处理指针和资源管理!
引用将c的地址带了回来ret也初始化成为c的引用,Add栈帧销毁又创建,每次的c变量都在同一块空间ret也引用了这块空
」&spm=1001.2101.3001.5002&articleId=131444631&d=1&t=3&u=22f234bb624a45e2a3a5d973e5d0e357)
1万+

被折叠的 条评论
为什么被折叠?



