当前位置: 首页 > news >正文

我的C++学习初体验与心得

       作为一名C++新手学生,这段时间的学习让我对这门编程语言有了从陌生到逐渐熟悉的认知,也积攒了不少学习心得,过程中编写的一些简单代码更是让我对知识的理解愈发深刻。

  最初接触C++时,光看目录里的“面向对象”“数据类型”“控制结构”这些术语就觉得一头雾水。但跟着课程逐步学习后,我才慢慢揭开它的神秘面纱。

  学习第1章面向对象与C++基础时,我了解到C++是面向对象的编程语言,封装、继承、多态这些特性让程序设计有了全新的思路,就像给代码搭建了一个个功能明确的“积木块”。而C++的发展历程也让我明白,它是在C语言基础上不断进化,才有了如今强大的功能。第一次写出简单的C++程序时,那种成功运行的喜悦难以言表,比如下面这个输出“Hello, C++!”的程序:

 

#include <iostream>

using namespace std;

 

int main() {

    cout << "Hello, C++!" << endl;

    return 0;

}

 

  理解了名字空间和输入输出的用法后,我又尝试了带输入的程序,比如计算两个数的和:

 

#include <iostream>

using namespace std;

 

int main() {

    int a, b, sum;

    cout << "请输入两个整数:" << endl;

    cin >> a >> b;

    sum = a + b;

    cout << "它们的和是:" << sum << endl;

    return 0;

}

 

  这让我觉得自己向编程世界迈进了一大步。

  到了第2章C++语言基础,数据类型、变量常量这些内容让我意识到编程是如此注重细节。字符集、基本数据类型的区分,就像在给不同类型的数据“分类收纳”。变量的定义、赋值,常量的使用,让我明白程序里的每一个数据都需要被精准管理。标识符和关键字的学习,更是让我懂得了编程的“语法规则”,就像说话要讲语法一样,写代码也得遵循这些规范。

  运算符和表达式的学习充满了趣味性,各种运算符就像数学里的运算符号,但功能更丰富。我写了一个包含多种运算符的小例子:

 

#include <iostream>

using namespace std;

 

int main() {

    int a = 10, b = 3;

    cout << "a + b = " << a + b << endl;

    cout << "a - b = " << a - b << endl;

    cout << "a * b = " << a * b << endl;

    cout << "a / b = " << a / b << endl;

    cout << "a % b = " << a % b << endl;

    return 0;

}

 

  表达式的组合让代码有了计算的能力,类型转换则让不同类型的数据能“互通有无”。

  控制结构是我觉得最能体现编程逻辑的部分,判断结构让程序有了“选择”的能力,比如判断一个数是奇数还是偶数:

 

#include <iostream>

using namespace std;

 

int main() {

    int num;

    cout << "请输入一个整数:" << endl;

    cin >> num;

    if (num % 2 == 0) {

        cout << num << " 是偶数" << endl;

    } else {

        cout << num << " 是奇数" << endl;

    }

    return 0;

}

 

  循环结构则能让程序重复执行某段代码,大大提高了效率,比如输出1到10的数字:

 

#include <iostream>

using namespace std;

 

int main() {

    for (int i = 1; i <= 10; i++) {

        cout << i << " ";

    }

    cout << endl;

    return 0;

}

 

  函数的学习更是让我眼前一亮,它就像一个个“工具包”,把重复的功能封装起来,调用时特别方便。我写了一个计算两个数最大值的函数:

 

#include <iostream>

using namespace std;

 

int max(int a, int b) {

    return a > b ? a : b;

}

 

int main() {

    int x = 5, y = 8;

    cout << "最大值是:" << max(x, y) << endl;

    return 0;

}

 

  函数重载还能让同一个函数名实现不同的功能,比如同时实现两个整数和两个浮点数的最大值比较:

 

#include <iostream>

using namespace std;

 

int max(int a, int b) {

    return a > b ? a : b;

}

 

double max(double a, double b) {

    return a > b ? a : b;

}

 

int main() {

    cout << "整数最大值:" << max(5, 8) << endl;

    cout << "浮点数最大值:" << max(3.14, 2.71) << endl;

    return 0;

}

 

  这太巧妙了。

 

  学习C++的过程中,我也遇到了不少困难,比如刚开始面对编译错误时的手足无措,理解指针和引用时的绞尽脑汁。但通过不断查阅资料、向老师同学请教、反复调试代码,这些困难都被一一克服。我深刻体会到,学习C++需要耐心和毅力,每一个知识点都需要扎实掌握,每一个程序都需要反复打磨。

  这段时间的C++学习,不仅让我掌握了一门编程语言,更锻炼了我的逻辑思维能力和解决问题的能力。我知道自己目前的学习只是冰山一角,C++还有很多高深的知识等待我去探索,比如更深入的面向对象编程、模板、STL等。但我有信心,只要保持这份学习的热情和脚踏实地的态度,我一定能在C++的学习之路上走得更远,未来能用C++写出更复杂、更有价值的程序。

http://www.dtcms.com/a/462423.html

相关文章:

  • 网站建设框架模板东营有做网站的公司
  • 学校网站建设项目需求报告小程序代理加盟条仿
  • Linux网络编程(上)
  • 基于wordpress站点的域名迁移
  • spring 框架中常用注解汇总,及对应作用介绍、使用示例demo演示
  • 网站后台下载二级建造师报名官网
  • 济宁住房和城乡建设局网站秦皇岛 免费建网站
  • 企业网站建设报价方案动易官方网站
  • 制作一个 MBTI 人格测试网页项目
  • Echarts如何实现line的实线虚线的分段,并且虚实线连接点平滑过度效果(未来预测场景)?
  • 苍穹外卖day06
  • mysql大表批量查询中IN vs JOIN vs CTE 性能实验
  • Cryptomator:免费的加密工具,
  • 逐位加|二分
  • 外贸行业网站推广wordpress galleria
  • 没技术怎么做网站湛江的高铁站建在哪里
  • MySQL 中数据完整性约束、外键管理(含级联策略) 和多表查询
  • 做效果图的网站有哪些软件有哪些wordpress漂浮
  • 为什么ffmpeg进行视频合成有时长误差
  • 做旅游销售网站平台ppt百度的域名
  • 网站建营销型企业网站有哪些类型
  • 2008服务器网站专门做定制的网站
  • 【软件设计师中级】计算机组成与结构(四):总线系统 - 计算机的“高速公路网络“
  • 专注服务于站长和网站的信息平台.网站建设需要学ps吗
  • 视频直播点播平台EasyDSS推拉流技术结合无人机推流在道路交通巡检场景中的应用
  • 涂鸦T5AI开发板直播互动游戏控制器实现方案【全开源】
  • Spring Boot 应用启动机制详解
  • 河南省建设工程造价协会网站joomla 2.5:你的网站建设_使用与管理 pdf
  • 只有通过Motor 获取 mongodb的collection,才能正常使用 async with collection.watch()监听集合变更
  • 做一个网站 如何盈利网站开发一般用什么软件有哪些