前言:C++是在C语言的基础上发展起来的,它对C语言进行了语法、特性、思想等多方面了拓展,能够为复杂庞大的系统提供高效的编程服务。很多童鞋学会了C,但觉得学C++比较吃力。本文将从基本点切入,介绍C++入门的一些知识,适合C++初学者。

目录

一、什么是C++

二、搭建C++开发环境

三、认识HelloWorld程序

四、C++基本语法

4.1 变量与数据类型(存储数据的 “容器”)

4.2 输入与输出(与外部设备交互)

4.3 控制流:让程序 “做判断、做循环”

4.4 函数:封装重复代码(代码复用)

五、面向对象入门(C++核心)

六、推荐学习材料

七、C++进阶知识点


一、什么是C++

C++ 是一门静态类型、编译型、多范式的编程语言,由 C 语言扩展而来,既支持 C 语言的面向过程编程,又支持面向对象编程(类、对象、继承、多态),还支持泛型编程(模板)。

  • 特点:运行速度快、功能强大、应用广泛(操作系统、游戏、嵌入式、高性能服务器等)。
  • 学习逻辑:先掌握面向过程基础(变量、循环、函数),再学面向对象核心(类、对象),最后扩展进阶内容。

二、搭建C++开发环境

1)不需安装任何软件,打开浏览器即可写代码、debug(适合新手练习):

2)本地开发环境

编辑工具:

VS Code是目前最流行的代码编辑工具,界面清晰、友好,可安装各种灵活的插件,提高开发者开发效率。

编译器:

Windows下推荐安装MinGW-w64(需配置环境变量:将 MinGW 的bin目录(如C:\Program Files\MinGW-w64\mingw64\bin)添加到系统环境变量Path

Linux环境下推荐安装g++

sudo apt update
sudo apt install g++

三、认识HelloWorld程序

所有编程入门都从打印 “Hello World” 开始,这能够帮助理解 C++ 程序的基本结构。

// 1. 预处理指令:引入输入输出库(cout/endl需要)
#include <iostream>

// 2. 使用标准命名空间:避免每次写std::cout
using namespace std;

// 3. 主函数:程序的唯一入口(必须有,且只能有一个)
int main() {
    // 4. 核心逻辑:输出文字到控制台
    cout << "Hello, C++ World!" << endl;

    // 5. 返回值:0表示程序正常结束
    return 0;
}

四、C++基本语法

4.1 变量与数据类型(存储数据的 “容器”)

C++ 是静态类型语言,声明变量时必须指定类型,语法:类型 变量名 = 初始值;

数据类型用途示例
int整数int age = 18;
double高精度小数double pi = 3.14159;
float低精度小数float price = 9.9f;
char单个字符char ch = 'A';
string字符串(需引<string>)string name = "name";
bool布尔值(true/false)bool isStudent = true;

数据类型示例代码:

#include <iostream>
#include <string>  // 使用string必须引入这个头文件
using namespace std;

int main() {
    // 声明并初始化变量
    int age = 20;
    double height = 1.75;
    string name = "zgh";
    bool isAdult = age >= 18;

    // 输出变量(支持拼接)
    cout << "姓名:" << name << endl;
    cout << "年龄:" << age << "岁" << endl;
    cout << "身高:" << height << "米" << endl;
    cout << "是否成年:" << boolalpha << isAdult << endl;  // boolalpha让bool输出true/false

    // 修改变量值
    age = 21;
    cout << "修改后的年龄:" << age << endl;

    return 0;
}

4.2 输入与输出(与外部设备交互)

输入:cin >>,输出:cout <<

接收键盘输入,终端输出结果:

#include <iostream>
#include <string>
using namespace std;

int main() {
    string name;
    int score;

    // 提示用户输入
    cout << "请输入你的姓名:";
    cin >> name;  // 接收字符串输入(空格/回车结束)
    cout << "请输入你的分数:";
    cin >> score; // 接收整数输入

    // 输出结果
    cout << "你好," << name << "!你的分数是:" << score << endl;

    return 0;
}

4.3 控制流:让程序 “做判断、做循环”

程序默认从上到下执行,控制流可以改变执行顺序,是编程的核心逻辑。

1)条件语句(if-else):根据条件执行不同代码

#include <iostream>
using namespace std;

int main() {
    int score = 85;
    if (score >= 90) {
        cout << "优秀" << endl;
    } else if (score >= 80) {  // 多分支判断
        cout << "良好" << endl;
    } else if (score >= 60) {
        cout << "及格" << endl;
    } else {
        cout << "不及格" << endl;
    }
    return 0;
}

2)循环语句:重复执行代码

  • for 循环:更适合已知循环次数
    // 输出1到5
    for (int i = 1; i <= 5; i++) {
        cout << i << " ";  // 输出:1 2 3 4 5
    }
    
  • while 循环:更适合未知循环次数,仅需知道终止条件
    // 计算1到100的所有奇数和
    int sum = 0;
    int i = 1;
    while (i <= 100) {
        sum += i;
        i = i + 2;
    }
    cout << "1到100的所有奇数和:" << sum << endl;
    

4.4 函数:封装特定任务的代码块

函数是封装了特定任务的代码块,语法:返回值类型 函数名(参数列表) { 函数体 }

如,求和函数、打印特定信息函数:

#include <iostream>
using namespace std;

// 定义函数:计算两数之和
int add(int a, int b) {
    return a + b;  // 返回计算结果
}

// 定义无返回值函数(void)
void printInfo(string name, int age) {
    cout << "姓名:" << name << ",年龄:" << age << endl;
}

int main() {
    // 调用函数
    int result = add(3, 5);
    cout << "3+5=" << result << endl;  // 输出8

    printInfo("zgh", 22);  // 输出:姓名:zgh,年龄:22
    return 0;
}

五、面向对象入门(C++核心)

C++ 的核心特色是面向对象(OOP),核心概念是类(Class) 和对象(Object)

  • 类:是 “模板”,定义事物的属性(成员变量)和行为(成员函数);
  • 对象:是类的 “实例”,根据模板创建的具体事物。

示例:定义一个 “人” 类

(这里为了尽可能简单易懂,未定义构造函数,系统默认自动生成)

#include <iostream>
#include <string>
using namespace std;

// 定义类(模板)
class Person {
public:  // 访问权限:公有的(外部可访问)
    // 成员变量(属性)
    string name;
    int age;

    // 成员函数(行为)
    void introduce() {
        cout << "我叫" << name << ",今年" << age << "岁。" << endl;
    }

    // 成员函数:修改年龄
    void setAge(int newAge) {
        if (newAge >= 0) {  // 简单的合法性检查
            age = newAge;
        }
    }
};

int main() {
    // 创建对象(实例)
    Person p1;
    // 给对象的属性赋值
    p1.name = "zgh1";
    p1.setAge(25);  // 通过成员函数修改属性

    // 调用对象的成员函数
    p1.introduce();  // 输出:我叫zgh1,今年25岁。

    // 再创建一个对象
    Person p2;
    p2.name = "zgh2";
    p2.setAge(30);
    p2.introduce();  // 输出:我叫zgh2,今年30岁。

    return 0;
}

简单解析:上述“人”的类中,每个人都有姓名和年龄,将这些信息和相应的方法封装在一起(封装成一个类),使得代码结构紧凑、容易复用及扩展,可读性更高。如果来一个新的人,那么只需要通过该封装好的类,定义一个新的对象即可,然后通过类中的函数接口调用获取姓名或设定年龄等操作。

六、推荐学习材料

  • 书籍:《C++ Primer Plus》(新手友好)、《C++ Primer》(经典深入)
  • 视频:B 站 “黑马程序员 C++ 教程”“尚硅谷 C++ 入门”(免费、易懂)

七、C++进阶知识点

C++还有很多强大的技术,如:智能指针(内存管理)、虚函数(动态多态)、模板编程等。在后续文章中会进行讲解介绍,感兴趣的童鞋可以跟进。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐