- 博客(8)
- 收藏
- 关注
原创 我的C++学习之旅:从懵懂敲码到拨开云雾
那段时间,我把经典的案例拆解了一遍又一遍,从模仿别人的代码,到慢慢写出自己的小项目——一个简易的学生信息管理系统,看着自己写的代码能实现增删改查功能,突然就觉得之前的熬夜和掉头发都值了。为了排查一个越界访问的错误,我盯着屏幕调试到深夜,直到看到程序正常输出的那一刻,才松了口气,那种成就感至今难忘。它不像有些语言那样“开箱即用”,但正因为这份“难”,才让我们在深入理解计算机底层原理的过程中,练就了更扎实的编程功底。学习C++的旅程还在继续,那些熬过的夜、敲过的代码,都成了我成长路上最珍贵的印记。
2025-12-28 17:45:59
202
原创 小白闯关虚函数:从“一脸懵”到“哦原来如此”
比如我曾以为只要是重写的函数都要加virtual,后来才知道,只有基类的函数需要加,派生类的重写函数加不加virtual都不影响,不过为了代码可读性,最好还是加上。还有一次,我在基类的析构函数里忘了加virtual,用基类指针释放派生类对象时,派生类的析构函数没有被调用,导致了内存泄漏。虚函数的出现,就是为了让程序更灵活、更具扩展性,让不同的对象能以统一的接口,展现出各自不同的行为。可当我用基类指针指向派生类对象,再去调用那个重写的函数时,结果却和我预想的不一样——它居然调用了基类的函数,而非派生类的。
2025-12-28 14:18:40
202
原创 啃下封装与多态(下)——多态原来这么“灵活”
实不相瞒,我刚接触多态的时候,也差点被 virtual 关键字绕晕,今天就把我踩过的坑、悟到的理,全部分享给和我一样的小白。第一个是忘记给基类析构函数加 virtual ,用基类指针释放派生类对象的时候,派生类的析构函数没被调用,导致内存泄漏。编译器在编译的时候,就已经确定了要调用的是基类的 makeSound 方法,不管指针指向谁,都不会变。这就是动态绑定的魅力,也是多态的核心:基类指针或引用指向派生类对象时,会根据实际对象的类型,调用对应的成员函数。cout << "喵喵喵" << endl;
2025-12-26 21:17:05
269
原创 啃下封装与多态(上)——原来代码也需要“遮羞布”
写一个 Student 类的时候,直接把 name 、 score 暴露在外面,结果手滑写出了 stu.score = -50 这种离谱代码,运行的时候没报错,但数据直接乱套了。尤其是封装,光看概念的时候觉得云里雾里,敲了几行代码才恍然大悟:原来这玩意儿不是花架子,是真能让代码变“乖”的神器!决定把这段踩坑的经历写成博客,分上下两篇,上篇唠封装,下篇啃多态,希望能给和我一样的新手小伙伴指条路,少走点弯路。cout << "姓名:" << name << " 分数:" << score << endl;
2025-12-26 21:15:55
220
原创 小白学C++指针(下):调试中,终于摸到它的“内存逻辑”
时,控制台依次跳出1、2、3、4、5,那一刻我突然懂了:指针的“移动”不是乱跳的, p+i 其实就是往后跳 i 个 int 类型的内存空间,刚好对应数组的第 i 个元素。看到 int *p = &a;,我不再纠结 * 的位置,而是能立刻反应过来: p 是指针,存的是 a 的地址;,我也能理清逻辑: pp 存的是 p 的地址, *pp 就是 p 本身(也就是 a 的地址), **pp 才是 a 的值。真正让我对指针改观的,是一次用指针处理数组的练习——原来它不是“幽灵”,而是有明确逻辑的“内存导航仪”。
2025-11-11 15:09:48
261
原创 小白学C++指针(上):初见时,它像一团解不开的“内存迷雾”
我对着电脑里的变量表发呆: int a = 10 ,我知道 a 里存的是10,那 p 存的“地址”,难道是 a 在内存里的“门牌号”?对着代码调试时,看着监视窗口里 p 的地址和 *p 的值,我好像能摸到一点逻辑,可一合上书,又觉得指针像个看不见的幽灵,不知道它什么时候会指向错误的地方。第一次写 *p = 20 时,我反复检查了三遍: p 前面加个 * ,就能改 a 的值?现在回头看,最初的迷茫其实很正常——指针跳开了“变量存值”的直观逻辑,直接跟内存打交道,对刚接触的小白来说,确实像跨了一道坎。
2025-11-11 15:06:37
166
原创 C++入门心得:从“看不懂”到“写得出”的小步进阶
老师讲“把重复代码封装成函数”,我却不知道怎么用。刚学C时,我连“为什么要写main函数”都搞不懂,看着屏幕上的代码像看天书。后来学习C++发现他跟C有很多相似之处,跟着简单案例一步步试,慢慢从“只会抄代码”到“能自己写小功能”,才发现入门就是不断积累小成功的过程。从函数声明到数组下标,每搞懂一个细节,就离“会用C++”近一步——原来只要不害怕出错,一点点试,小白也能慢慢掌握这门语言。加上声明后代码能跑了,我才明白“声明告诉编译器有这个函数,定义才是函数的具体内容”,之后写代码再也没漏过声明这一步。
2025-10-19 20:08:51
320
原创 C++入门学习心得:从迷茫到入门的跨越
运行代码后,对比“a的地址”和“指针p的值”,我终于明白指针就是存储地址的变量,“&”取地址、“*”解引用,抽象的概念一下子具体了。现在我知道,C++入门的关键是“边写边悟”。还有指针的概念,“*”和“&”的用法像绕口令,总搞不清变量地址和值的区别,写出来的代码频繁崩溃。初次接触C++时,我像面对一本满是密码的书——复杂的语法规则、抽象的概念,让入门之路充满挑战,但每一次克服困难后的收获,都让我更靠近这门语言的核心。刚开始完全不懂“*”和“&”的区别,写“通过指针修改变量值”的代码时,总是把地址和值搞混。
2025-10-19 20:05:23
139
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅