mac及linux C++环境配置
linux系统介绍
什么是linux系统?
linux是开源的操作系统
多用户多任务
windows属于:单用户,多任务。
Linux属于:多用户,多任务
vscode快捷键
功能
快捷键
转到文件
command+p
命令面板
F1
打开/跳转到终端
ctrl+` 或 ctrl+j
变量统一重命名
F2
开关侧边栏
command+b
转到定义处
F12
代码格式化
command+K 然后 command+F
当前行下方插入一行
command+enter
当前行上方插入一行
command+shift+enter
定义处缩略图(只看一眼而不跳转过去)
alt+F12
删除当前行光标右侧所有的字符
command+delete
多光标同时输入
alt+左键 选多行
同时选中所有匹配(可以方便修改和添加东西)
command+shift+L
怕上面命令匹配太多可以逐个匹配
command+d
回到上一个光标操作
command+U
整个项目中查找
c ...
详细介绍git
git一图流
git详解Git与svn对比SVN(Subversion)是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活,干完后,需要把自己做完的活推送到中央服务器。集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网速慢的话,就郁闷了。下图就是标准的集中式版本控制工具管理方式:
集中管理方式在一定程度上看到其他开发人员在干什么,而管理员也可以很轻松掌握每个人的开发权限。但是相较于其优点而言,集中式版本控制工具缺点很明显:
服务器单点故障
容错性差
Git
Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑上。既然每个人的电脑都有一个完整的版本库,那多个人如何协作呢?比如说自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。下图就是分布式版本控制工具管理方式:
...
C# 又称“C Sharp”,是微软发布的一种简单、安全、稳定、通用的面向对象编程语言。
C# 是从 C/C++ 衍生出来的,它在继承 C/C++强大功能的同时,抛弃了 C/C++ 的一些复杂特性。C# 还和 Java 非常类似,仅仅在一些细节上有差别。
C# 运行在 .NET Framework 上,借助 C# 可以开发不同类型的应用程序:
桌面应用程序;
网络应用程序;
分布式应用程序;
Web 服务应用程序;
数据库应用程序等。
.NET Framework.NET Framework 主要由四个部分构成,如下所示:
公共语言运行库(CLR);
框架类库(FCL);
核心语言(WinForms、ASP.NET 和 ADO.NET);
其他模块(WCF、WPF、WF、Card Space、LINQ、Entity Framework、Parallel LINQ、Task Parallel Library 等)。
CLR:公共语言运行库CLR 全称为“Common Language Runtime”,它为 .NET 应用程序提供了一个托管 ...
C++概述
“c++”中的++来自于c语言中的递增运算符++,该运算符将变量加1。c++起初也叫”c with class”.通过名称表明,c++是对C的扩展,因此c++是c语言的超集,这意味着任何有效的c程序都是有效的c++程序。c++程序可以使用已有的c程序库。
C++程序员知识大全
库是编程模块的集合,可以在程序中调用它们。库对很多常见的编程问题提供了可靠的解决方法,因此可以节省程序员大量的时间和工作量。$$c++=c+泛型编程+面向对象$$c++融合了3种不同的编程方式:
c语言代表的过程性语言.
c++在c语言基础上添加的类代表的面向对象语言.
c++模板支持的泛型编程。
可移植性和标准程序是否可移植性有两个问题需要解决。第一是硬件,针对特定硬件编程的程序是不可移植的。第二,语言的实现
为了兼容需要制定标准
新特性标准排序:(时间排序)
c++98 已有的c++特性+异常+运行阶段类型识别(RTTI)+模板+标准模板库([[STL]])
c++11
c++14
c++17
对于传统的结构化语言,我们向来没有太多的疑惑,函数调用那么自然而明显, ...
WPF是微软推出的一项基于windows操作系统,.net平台的c/s客户端构建技术,最大的特征就是可以快速构建项目从而达到节约项目成本的目的.
相关推荐书籍: <<WPF编程宝典使用c#2012和.net4.5 第四版>> <<c#高级编程>> <<CLR Via C#>> <<精通C#>> <<你必须知道的.NET>>
.net core下载
通过使用.NET Core和跨平台UI框架Avalonia,可以在Mac上编写和运行类似于WPF的桌面应用程序
wpf微软官方教程
有前端经验很简单 不过wpf的绑定设计的太拉了 双向绑定麻烦的要死 xaml循环也不好用 第一次用wpf没看文档和教程直接写的 list没法响应式 研究了n久最后还是在vs隐藏提示里发现的要用bindlist!简单的双向绑定还要字段属性双重设计还得在set用函数通知 看似很美好用起来着实很折寿 xaml遍历后传参也麻烦的要死 不改进基本没希望了 怪不得没人用 设计成razor那种 ...
数据序列化格式盘点
yaml概述YAML(YAML Ain’t Markup Language),一种数据序列化格式
优点
容易阅读
容易与脚本语言交互
以数据为核心,重数据轻格式
YAML文件拓展名
.yml(主流)
.yaml
语法规则
大小写敏感
属性层级关系使用多行描述,每行结尾使用冒号结束
使用缩进表示层级关系,同层级左侧对齐,只允许使用空格
属性值前面添加空格(属性名与属性值之间使用 冒号+空格 作为分隔)
#表示注释
数组数据在数据书写位置的下方使用减号作为数据元素开始符号,每行书写一个数据,减号与数据间空格分隔
核心规则: 数据前面要加空格与冒号隔开
yaml数据案例12345678enterprise: name: itcast age: 16 tel: 400618400 subject: - Java - 前端 - 大数据
XML[[网络编程#XML|查看xml介绍]]
JSON[[网络编程#Json|查看Json介绍]]
C++相关库盘点
tinyxml2 xml数据解析库
yaml-cpp yaml数据解析库
rapidjson j ...
此处记录GoogleColab的用法
什么是Google Colab
Google Colab(Colaboratory)是一个基于Jupyter Notebook的免费云端计算平台,由Google提供支持。它允许用户在云端运行Python代码,并且提供了免费的GPU和TPU加速器。Google Colab使用Jupyter作为其交互式计算环境的基础,因此可以说Google Colab是建立在Jupyter之上的。用户可以在Google Colab中编写和运行Jupyter Notebook,享受云端计算的便利和资源。
Jupyter是一个开源的交互式计算环境,可以用于数据分析、数据可视化、机器学习等任务。它支持多种编程语言,包括Python、R和Julia等。Jupyter的核心是Notebook,可以在其中编写和运行代码,并实时查看结果
支持的外连接
Seed bank:类似于含很多深度学习模型和实例的库
Github
GoogleDrive:Google网盘,免费用户可存放15G文件资源
挂载GoogleDrive的例子:
123456#挂载云盘from google. ...
此处记录架构相关的知识
最宏观的架构盘点
分层架构(LAYERED): 通过层次分离确保系统的可维护性
优点:低层可复用
缺点:在高性能应用程序中的性能很差,因为通过多个层来满足业务请求的效率不高
适用场景: 通常用于构建一般的桌面应用程序以及相对简单的web应用程序
客户端服务器模式
缺点: 服务器可能成为性能瓶颈和单点故障
适用场景: 在线应用程序,如电子邮件,共享文档系统和银行业务
模型视图控制器模式
事件驱动架构: 通过组件间的松耦合实现高灵活性
事件总线模式: 现代企业软件通常构建为分布式系统,可以为异步到达的与大量事件相关的消息提供服务.在事件总线上,事件源将消息发布到特定的通道,监听器订阅特定的通道,监听器收到所订阅的通道中的消息通知
缺点: 因为所有消息都通过相同的总线传输,这种模式的可伸缩性是一个问题
适用场景: Android开发,电子商务应用程序和通知服务中
管道过滤模式(PIPE-FILTER): 单个事件触发一系列处理步骤,每个步骤执行特定的功能.将复杂消息流转换为唯一的简单纯文本顺序消息流,而不需要额外的数据字段.管道和过滤器体系结构将较大的处 ...
此处记录软考相关的知识
第一个阶段:主要是把基础的知识点过一遍,同时可以有针对的做一些习题,比如说复习到操作系统中分段分页的习题,就可以找一些相应的习题做做,不要多,前期先做上一两道。
习题大家可以到网站上去做,有很多在线做题的网站。
第二个阶段:开始刷真题,真题尽可能多刷吧,不过也不要刷年代太久远的,太久远的参考价值不大,近五年的是一定要刷的,如果时间充裕的话,就刷近八年的吧,重点反正要放在近几年的,刷题的顺序是倒序,就是先刷2022年的,然后往前推。
真题是非常重要的,只有真题才能真实反应软考的出题方向。
切记不要漫不经心的做题,每天可以做两套试题(上午题和下午题)。做完后对照解析,错题要重点分析,每道题目都要弄懂。
做真题的时候,大家也要心中有数,题目做多了,自然也就知道哪些是重点,哪些题目经常考,要学会总结。
第三个阶段:刷模拟卷。刷模拟卷要给自己限时,模拟考场环境来做。模拟卷不用刷太多,做个四套左右足够了,模拟卷主要是检测自己的复习情况。
第四个阶段:这个阶段是巩固前面复习的,毕竟肯定有还没记牢的知识点,这个阶段一定要再巩固下。
还有就是看错题,错题也是精华,能填补 ...
opencv相关知识
计算机图像颜色基础理论用一个巧妙的实验来给你讲清楚什么是 Gamma,还未记录总结
RGB颜色空间基本知识
RGB三原色起源于上世纪初1809年Thomas Young提出视觉的三原色学说,随后Helmholtz在1824年也提出了三原色学说:即:视网膜存在三种视锥细胞,分别含有对红、绿、蓝三种光线敏感的视色素,当一定波长的光线作用于视网膜时,以一定的比例使三种视锥细胞分别产生不同程度的兴奋,这样的信息传至大脑中枢,就产生某一种颜色的感觉。
在显示器发明之后,从黑白显示器发展到彩色显示器,人们开始使用发出不同颜色的光的荧光粉(CRT,等离子体显示器),或者不同颜色的滤色片(LCD),或者不同颜色的半导体发光器件(OLED和LED大型全彩显示牌)来形成色彩,无一例外的选择了Red,Green,Blue这3种颜色的发光体作为基本的发光单元。通过控制他们发光强度,组合出了人眼睛能够感受到的大多数的自然色彩。
计算机显示彩色图像的时候也不例外,最终显示的时候,要控制一个像素中Red,Green,Blue的值,来确定这个像素的颜色。计算机中无法模拟连续的存储从 ...