# 代码学习
learning resource
Stack Overflow – Where Developers Learn, Share, & Build Careers
本站介绍 | 代码随想录 (programmercarl.com)
CS106B Home (stanford.edu)
youngyangyang04/TechCPP: 【C++面试&C++学习指南】 这里整理了C++后端研发工程师面试和工作必备的知识点 。 (github.com)
C++Primer第五版——习题答案目录 – Mered1th – 博客园 (cnblogs.com)
2021 Advanced C++ workshop – Introduction – YouTube
Programming Basics | Beginning Scientific Computing (washington.edu)
Online CPP – IDE, Code Editor, Compiler (online-cpp.com)
C++ (Cpp) Code Examples – HotExamples
09:52:04 12/14/2021
关于C++为什么必须声明
为什么C++函数调用前必须声明 – tsecer – 博客园 (cnblogs.com)
“因为C++支持函数过载。也就是说同样一个函数名,可以带不同的参数,从而形成不同的函数,它们可以并存并且不至于出现连接错误。这一切都要归功于C++名字粉碎的功劳,也就是mangling”
——搞不懂,反正记住C++里面先声明再用。
20:51:48 11/28/2021
C++八股文
常见C++笔试面试题整理_ljh0302的专栏-CSDN博客_c++面试题
感觉 C++ 很简单,但为何这么多劝退的? – 知乎 (zhihu.com)
22:01:13 11/29/2021
斯坦福CS106B课程
CS106B Welcome! (stanford.edu)
10:59:46 11/30/2021
Ubuntu下多个gcc版本切换
Ubuntu下多个gcc版本之间的切换_Youpeng-CSDN博客
Linux环境下多版本编译器(gcc)共存_KingMumuの博客-CSDN博客_多版本gcc
GCC版本降级,基于ubuntu系统_哔哩哔哩_bilibili
看当前的gcc版本
gcc -v
使用下面命令安装gcc-7
sudo apt install gcc-7
安装好的gcc版本输入下面命令,后面的80代表优先级
sudo update-alternatives –install /usr/bin/gcc gcc /usr/bin/gcc-7 80
如果已经设置好多个版本的优先级,采用下面命令可以直接切换gcc版本
sudo update-alternatives –config gcc
12/03/2021
Debug单步调试
FAQ之 Debug单步调试 – Fortran教程 – Fortran Coder 程序员聚集地 (fcode.cn)
12/04/2021
各种const用法
1、区分const char*和char const*和char *const(C++新经典P240)
const char*和char const* 是等价的。举个例子,const char * p定义一个常量指针,指针p所指向的内容不能通过p进行修改(例:*p= 123)。char * const p,有人称为指针常量,p所指向的内容可以通过p进行修改,但是p不能再指向其他内容。还有他们的结合体:const char * const p = str 或 char const * const p,表示p的指向不能改变,p指向的内容不能通过p来改变。
要点:区分指针常量和常量指针,这部分知识在this指针的使用时会提及(C++新经典,P279),this就是一个指针常量。
10:56:27 12/06/2021
2、const结合引用
const int &a = 100;//a代表的内容不能修改。
推荐阅读:C++ 常量 | 菜鸟教程 (runoob.com)
3、函数形参中带const
一句话描述:函数形参要是用类似void tt(const int xx) 的常量引用方式,使得函数形参xx不能被修改。这样做的这个好处比较明显:void func( int &a){ },被func(706)调用时出错,此时必须传递一个变量。但是对于void func(const int &a){ },func(706)就可以传递进去一个常量。
15:30:28 12/06/2021
刚了解C++的时候这个.和->让我困扰了好久好久- -。当时为啥就没想到搜一搜呢- -!
C++中的.和::和:和->的区别_k_koris的博客-CSDN博客_-> c++
讲了函数重载,覆盖和隐藏。
C++中同名函数之间的关系_zhuoya_的博客-CSDN博客_c++同名函数
20:59:54 12/06/2021
Linux shell
1、linux chmod命令
在编写一个shell脚本过后,要用> chmod +x ./脚本文件名 ,使得脚本具有执行权限(这种方式让脚本编程可执行程序,注意脚本文件名前一定要有./)。还有一种可以让脚本运行起来的方法,直接运行解释器。类似: /bin/sh test.sh /bin/php test.php
准备把Linux的内容单独开一个文章写:点我点我。
12/7/2021
才发现theo Ong大佬也出了Bash教程!!
theodoreOnzGit/Bash_OpenFOAM_YouTube: Bash Coding for OpenFOAM on YouTube (github.com)
OpenFOAM Bash 1 – Introduction echo, unset, python math – YouTube
视频简介里面有很多很多的资料!以及初步了解到,bash和python可以结合使用。
20:39:33 12/10/2021
C++中的一些符号例如: ->, .等
C 语言中,「.」与「->」有什么区别? – 知乎 (zhihu.com)
c++中的<>的作用是什么呢? – 知乎 (zhihu.com)
12/8/2021
CPU眼里的:指针 | 万物皆“指针” – 知乎 (zhihu.com)
20:35:29 12/16/2021
C++关键字详解_scmuzi18的博客-CSDN博客_c加加语言关键字的组
14:59:50 12/19/2021
C++泛型编程
(新手向)谈谈C++中的萃取 – 知乎 (zhihu.com)
12/9/2021
C++中的声明与定义
C++中的声明与定义 – MicN – 博客园 (cnblogs.com)
12/9/2021
声明:规定了变量的类型和名字。而定义在此之外还申请存储空间。
C++类定义和类实现以及创建对象
c++类定义和类实现 – kkshaq – 博客园 (cnblogs.com)
“c++中我们cpp文件和.h文件的区别是,cpp文件是需要编译的文件,成为一个独立的编译单元,而h文件从来是不需要编译,只是用于预处理。”这点是对标准C++说的,对于OpenFOAM,OpenFOAM搞得很奇怪的,很多功能都是在.H文件里面实现的。
C++类的定义和对象的创建详解 (biancheng.net)
12/10/2021
C++模板
comment:这种总结类型的文章应该先得完完整整的过一遍书,然后再看总结,脑袋里应该得有相关的知识体系才行。
12/10/2021
Git学习
过一遍GitHub上这个教程,gitee有中文翻译版本
Learn Git Branching (gitee.io)
其他一些文字教程
史上最浅显易懂的Git教程!_廖雪峰的Blog-CSDN博客
13:36:56 12/11/2021
Argument?Parameter?Varible?
C语言之argument和parameter的区别_Allen.W的博客-CSDN博客_c语言parameter
variable argument parameter的区别_harrywsc的专栏-CSDN博客_argument自变量
16:20:11 12/11/2021
代码学习方法
How I would learn to code (if I could start over) – YouTube
避免头文件多次定义的方法
#pragma once用法总结 – 世纪强风 – 博客园 (cnblogs.com)
调试代码
VS在一个项目中写多个包含main函数的源文件并分别调试运行 – subeiLY – 博客园 (cnblogs.com)
还有人说用main1,main2这样修改函数名的方法来调试。
在线编译器
Compiler Explorer (godbolt.org)
上面这个网站,可以在线编译并直接将C++代码与汇编语言进行对比!
写脚本:
win
windows 如何获取一个文件夹下所有文件的文件名? – 知乎 (zhihu.com)
linux