瀏覽代碼

feat: 添加一些函数的解释

nicetry12138 1 年之前
父節點
當前提交
366117b5ed
共有 3 個文件被更改,包括 81 次插入15 次删除
  1. 0 0
      OpenGL/README.md
  2. 79 0
      重学CPP/函数/README.md
  3. 2 15
      重学CPP/函数/src/FunctionDemo/FunctionDemo/FunctionDemo.cpp

+ 0 - 0
OpenGL/README.md


+ 79 - 0
重学CPP/函数/README.md

@@ -0,0 +1,79 @@
+# 函数
+
+- 函数可以让代码模块化,便于阅读维护
+- 代码模块化之后,能够实现分工合作
+- 减少重复代码,降低工作量
+
+```cpp
+// 返回类型 函数名称(参数1, 参数2, 参数3...) {
+//     函数功能区
+//     renturn 返回值;
+// }
+
+int add(int a, int b) {
+    int result = a + b;
+    return result;
+}
+```
+
+> 一般函数定义如上
+
+## 函数参数:指针参数
+
+```cpp
+int add(int a, int b) {
+    a *= 100;
+    b *= 10;
+    return a + b;
+}
+
+int a = 2, b = 1;
+int c = add(a, b);
+```
+
+上面函数运行结束之后,全局定义的 a、b 的值并不会被修改为 200 和 10,因为函数参数 a、b 是函数作用域的临时变量,相当于全局作用域的 a 给函数作用域的 a 赋值,只是变量名相同
+
+```cpp
+int add(int* a, int* b) {
+    a *= 100;
+    b *= 10;
+    return a + b;
+}
+
+int x = 2, y = 1;
+int z = add(&x, &y);
+```
+
+如果 `add` 函数参数接受的是变量地址,那么通过地址可以直接修改 x、y 的值
+
+```cpp
+int add(int &a, int &b) {
+    a *= 100;
+    b *= 10;
+    return a + b;
+}
+
+int x = 2, y = 1;
+int z = add(x, y);
+```
+
+如果 `add` 函数参数接受的是引用,那么可以直接通过引用的方式来修改原来的值
+
+## 默认参数
+
+默认参数智能放在最后
+
+```cpp
+int add(int a = 100, int b = 100);  // 正确
+int add(int a = 100, int b);    // 错误
+int add(int a, int b, int c = 100); // 正确
+int add(int a, int b = 100, int c); // 错误
+int add(int a, int& b = 100);   // 错误 int& 无法使用默认参数
+```
+
+## 不定量参数
+
+如果遇到想要求多个数的和,但是不确定数的个数,也就不能确定函数参数个数,这种情况需要使用不定量参数
+
+再比如一些控制台命令,根据你参数的个数会启动不同的功能
+

+ 2 - 15
重学CPP/函数/src/FunctionDemo/FunctionDemo/FunctionDemo.cpp

@@ -1,20 +1,7 @@
-// FunctionDemo.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
-//
-
-#include <iostream>
+#include <iostream>
 
 int main()
 {
     std::cout << "Hello World!\n";
+    return 0;
 }
-
-// 运行程序: Ctrl + F5 或调试 >“开始执行(不调试)”菜单
-// 调试程序: F5 或调试 >“开始调试”菜单
-
-// 入门使用技巧: 
-//   1. 使用解决方案资源管理器窗口添加/管理文件
-//   2. 使用团队资源管理器窗口连接到源代码管理
-//   3. 使用输出窗口查看生成输出和其他消息
-//   4. 使用错误列表窗口查看错误
-//   5. 转到“项目”>“添加新项”以创建新的代码文件,或转到“项目”>“添加现有项”以将现有代码文件添加到项目
-//   6. 将来,若要再次打开此项目,请转到“文件”>“打开”>“项目”并选择 .sln 文件