【MFC教程】C++基础:01 小黑框跑起来
——写给纯小白的 C++「语言地基」速成课
(看完就能自己敲出一个可运行的 .exe)
0. 开场 30 秒
目标:用 Windows 自带的「小黑框」(命令行窗口)跑起一段真正属于你的 C++ 程序。
门槛:零。只要会打字、会点鼠标。
1. 把“原料”准备好——基本类型与运算
计算机只认识 0 和 1,但 C++ 贴心地给了几种“盒子”来装不同大小的数字和字符。
最常用的四个盒子:
盒子名 | 能装什么 | 占多大 | 举 例 |
---|---|---|---|
int | 整数 | 4 字节 | int age = 18; |
double | 带小数点的数 | 8 字节 | double pi = 3.1415; |
char | 单个字符 | 1 字节 | char grade = 'A'; |
bool | 真 / 假 | 1 字节 | bool ok = true; |
运算符号就像数学里的加减乘除,但多了一些电脑特有写法:
- 四则运算:
+ - * /
- 整除取余:
%
(7 % 3 结果是 1) - 逻辑运算:
&&
(与)、||
(或)、!
(非)
一行代码就能让电脑帮你算:
int n = 10 + 5 * 2; // 先乘除后加减,n 得到 20
2. 让程序“拐弯”——流程控制
电脑很笨,只能一行一行往下读。我们用流程控制语句告诉它:“这里要绕路!”
if / else:做选择
int x = 7;
if (x % 2 == 0)cout << "偶数";
elsecout << "奇数";
for:按次数循环
for (int i = 0; i < 10; ++i) // 从 0 数到 9cout << i << ' ';
while:条件满足就继续
int sum = 0, i = 1;
while (i <= 100) { // 算 1+2+...+100sum += i;++i;
}
switch:多选一
char op = '+';
switch (op) {case '+': cout << "加法"; break;case '-': cout << "减法"; break;default: cout << "未知";
}
3. 把重复代码打包——函数
函数 = 给一段代码起名字,以后喊名字就能用。
写法 3 步曲
- 声明(告诉编译器“我有这么个函数”)
- 定义(真正写函数体)
- 调用(在 main 里用)
// 1. 声明(通常在头文件或 main 之前)
int add(int a, int b);// 2. 定义
int add(int a, int b) {return a + b;
}// 3. 调用
int main() {cout << add(3, 4); // 屏幕打印 7
}
4. 把工具箱打开——头文件 & 命名空间
头文件:拿来主义
别人写好的代码,用 #include
直接搬进来。
#include <iostream>
提供输入输出#include <cmath>
提供数学函数sqrt
,pow
…
命名空间:防止重名
C++ 标准库里的名字都放在 std
这个抽屉里。
- 偷懒写法:
using namespace std;
(整个抽屉端走) - 安全写法:
std::cout << "Hello";
(精确拿取)
5. 把源代码变成 .exe——编译模型(一张图秒懂)
源码(.cpp) ──► 编译器 ──► 目标文件(.obj) ──► 链接器 ──► 可执行文件(.exe)
- 编译:检查语法,翻译成机器码,生成
.obj
- 链接:把多个
.obj
和库文件粘在一起,生成最终.exe
在 Visual Studio 里只需 3 步
- 新建 → 控制台应用 → 起名叫 Hello
- 把下面 7 行代码粘进
Hello.cpp
- 按
Ctrl + F5
(开始执行不调试)→ 小黑框蹦出来!
#include <iostream>
using namespace std;int main() {cout << "Hello, 小黑框!" << endl;return 0;
}
常见报错及对策
报错信息 | 含义 | 怎么办 |
---|---|---|
LNK2019: unresolved external symbol | 声明了函数却没定义 | 把函数体补全 |
C2065: 'cout' : undeclared identifier | 没包含头文件或没写 std:: | 加 #include <iostream> 和 using namespace std; |
6. 5 分钟速通清单(背下来就能出门)
- 4 个基本盒子:
int
double
char
bool
- 4 条流程控制:
if/else
for
while
switch
- 3 步函数:声明 → 定义 → 调用
- 2 个头文件:
#include <iostream>
#include <cmath>
- 1 句命名空间:
using namespace std;
- 1 个快捷键:
Ctrl + F5
跑出小黑框
7. 下一步
小黑框跑起来了?恭喜!你已经完成「语言地基」。
接下来回到主线,去学面向对象——类、继承、多态,它们才是 MFC 世界的真正入口。