- 博客(8)
- 收藏
- 关注
原创 征服VS Code(2):C/C++多文件编译:脚本编译
引子本文是征服VS Code系列的第二篇文章。会讲述2种在VS Code(以下我简称vsc)内实现C/C++多文件编译的方法。什么样的人可以读这篇文章?在继续往下看之前,请保证你已经懂得如何使用vsc进行单文件编译。如果觉得还不懂的,可以看征服VS Code的第一篇文章。在那里我会教你一些命令行编译基础。同样的,这不是说明书,如果你喜欢顺着步骤无脑走下去那就······废话少说,开始学习!命令行在Windows上有两种命令行:cmd和Powershell。你如果安装了Linux子系统,你也
2021-04-04 11:45:01
783
原创 算法入门篇:排序算法(一)
引子笔者刚刚学习自己的的一门编程语言(C语言)的时候,正在runoob上面刷经典一百道题。第一次见到排序问题,我内心是不屑的,“这™不是张口就来?”然后我就贡献了一整个下午的时间在一个简单的排序上面。初学者不知到排序的时候可以有交换两个值这样的操作,所以基本的选择排序都没想出来,深陷于“找出最小值,放入新数组,再擦除这个值…”的死胡同里面。不仅贡献了一下午的时光,还顺带自尊心极度受挫。其实当时我的这种思路非常接近一种叫选择排序的算法,只需要一点点指点就可以马上取得拨云见日的效果。如果你也是这样
2021-03-08 14:40:06
240
原创 哈希表的一个简单实现
引子先来看一个问题:SCP基金会建立了一个收容点,为每一个收容的SCP都编号为“SCP-xxxx-xx”。编号的每一个SCP都有一个专门的文件描述其收容注意事项。请你设计一个程序,输入编号就可以找到对应的文件并且输出。这个问题的核心在于,如何通过编号迅速找到对应的文件。如果我们使用fstream对象来代表文件的话,一个可能的思路是这样的:struct SCP{ fstream document;//文件 string codeName;// 编号};int main(){
2021-03-06 19:31:40
522
原创 C++笔记:对象作函数返回值产生的奇妙bug
缘起笔者在学习模板类的时候,希望实现一个类似于STL的Array class。在其中需要一个深拷贝构造函数和一个重载赋值运算符。于是我写了如下代码:template<class Elem>class Array{private: Elem *_arr = nullptr; size_t _capacity = 0;//数组容量public: typedef unsigned int size_t; Array(size_t capacity=0 ):
2021-02-06 17:53:34
243
原创 C++笔记:关于面向对象
面向对象vs基于对象面向对象(Object-Oriented) 和 基于对象(Object-Based) 其实是两个不同的概念。笔者在阅读《Essential C++》时发现作者把基于对象的编程风格和面向对象的编程风格列为并列的两章来讲解。基于对象主要讲解了类class的设计;而面向对象章节则主讲面向对象三大特性。以下我会逐步辨析《Essential C++》中的num_sequence类的实现来帮助读者领悟面向对象思维。以下援引百度百科关于对于这两种方式的论述:基于对象(Object-Based)
2021-01-30 19:23:38
200
原创 C/C++内存四区模型
关于内存内存(Memory)是计算机极其重要的一个部分,也是手机电脑玩家攀比的一个重要指标。但内存一直是很多学习C和C++的学生一大难点。而很多同学至今仍然分不清磁盘和RAM内存有什么不一样。。A:你新买的电脑内存多大呀?B:我的是16G内存。A:我的手机都有64G内存欸。。不论你是否充当过上述对话里面的角色A,首先明确一点:以下讨论的内存,均不是指磁盘内存。有关更多磁盘内存和ram的区别,可以去翻阅其他更加专业的资料。这里说的内存,都是你可以在任务管理器里面看到的那个内存。这才是我们讨论
2021-01-24 19:53:19
393
原创 征服VS Code(1):C/C++单文件编译
本文概述本文记录了笔者在使用vsc踩过的无数的坑和一些觉得有必要提醒一下初学者的知识。希望可以为广大想入坑vsc的同志一些帮助。但请注意,本文并非是一篇手把手教你怎么配置的教程(tutorial),而是一篇指导性的、注重授人以渔的教学。也就是说,我不会提供现成的、可供复制的json文件。我更希望你可以从本文学到知识,然后可以自己去配置个人风格的环境。本篇使用的编译器是MinGW,更多参考可以去翻阅Microsoft提供的官方教程文档,个人感觉官方文档比许多个人的教程都要适合萌新。关于VScode首
2021-01-12 16:44:13
4568
原创 链表应用:两数相加
关于链表链表是一种极其重要的数据结构,因为对指针和抽象思维的要求较高,一度成为身边同学最痛恨的对象。我在将这里演示如何使用链表制作一个可以按位储存数字的容器。鉴于本人亦初学者,有错误请各位在评论区指正。...
2021-01-09 18:18:04
562
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人