交个朋友吧

随笔分类 -  编程

摘要:make学习,参考「Makefile 20分钟入门,简简单单,展示如何使用Makefile管理和编译C++代码」 程序见:https://github.com/ShiqiYu/CPP/tree/main/week03/examples/lab 文件结构 make语法 g++ #「只编译不链接」编译. 阅读全文
posted @ 2022-12-15 22:32 PamShao 阅读(101) 评论(0) 推荐(0)
摘要:bazel学习 a fast, scalable, multi-language and extensible build system bazel就是一个编译打包工具,类似于make、cmake等 安装 ⚠️:Centos7系统安装bazel4 参考:https://docs.bazel.buil 阅读全文
posted @ 2022-11-22 17:21 PamShao 阅读(2010) 评论(0) 推荐(1)
摘要:了解C++的Eigen库,主要内容来自:https://blog.csdn.net/hongge_smile/article/details/107296658 ,并加入自己的笔记。 ##介绍 Eigen is a C++ template library for linear algebra: m 阅读全文
posted @ 2022-07-02 12:06 PamShao 阅读(2695) 评论(0) 推荐(1)
摘要:在看开源库时,遇到很多条件编译指令,系统学习一波,内容转载自:https://www.cnblogs.com/wind-under-the-wing/p/14018825.html,并加入自己的笔记。 ##作用 根据不同情况编译不同代码、产生不同目标文件的机制,称为条件编译,条件编译是预处理程序的功 阅读全文
posted @ 2022-06-30 18:35 PamShao 阅读(535) 评论(0) 推荐(0)
摘要:本节先做一些了解。 ##numpy 参考:NumPy使用 NumPy 教程 NumPy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本 阅读全文
posted @ 2022-06-03 19:00 PamShao 阅读(98) 评论(0) 推荐(0)
摘要:最近跟着郑莉老师的视频,学习了C++基础,在此记录视频的笔记,方便查阅。路漫漫其修远兮~ (1)c++:-0 (2)c++:-1 (3)c++:-2 (4)c++:-3 (5)c++:-4 (6)c++:-5 (7)c++:-6 (8)c++:-7 (9)c++:-8 (10)c++:-9 视频地址 阅读全文
posted @ 2022-05-21 17:11 PamShao 阅读(197) 评论(0) 推荐(0)
摘要:上节(c++:-8)主要学习了C的流类库和输入输出,本节学习C的异常处理。 ##异常处理 ###介绍 (1)异常处理的基本思想: (2)异常处理的语法: (3)举例:处理除0异常 #include <iostream> using namespace std; int divide(int x, i 阅读全文
posted @ 2022-05-21 17:02 PamShao 阅读(223) 评论(0) 推荐(0)
摘要:上一节学习了C的STL库和范型:c++:-7,本节学习c的输入输出和流类库。 ##I/O流 (1)程序与外界环境的信息交换 当程序与外界环境进行信息交换时,存在着两个对象:程序中的对象、文件对象。 流是一种抽象,负责在数据的生产者和数据的消费者之间建立联系,并管理数据的流动。 (2)流对象与文件操作 阅读全文
posted @ 2022-05-20 14:21 PamShao 阅读(324) 评论(0) 推荐(0)
摘要:上一节主要学习C中的函数模版、数据结构以及排序查找操作:c++:-6,本节学习C的范型程序设计和STL: ##范型程序设计 编写不依赖于具体数据类型的程序 将算法从特定的数据结构中抽象出来,成为通用的 C++的模板为泛型程序设计奠定了关键的基础 ###概念 (1)用来界定具备一定功能的数据类型。例如 阅读全文
posted @ 2022-05-13 16:03 PamShao 阅读(673) 评论(0) 推荐(0)
摘要:基础知识 容器 容器就是一些模板类的集合,不同之处就是容器中封装的是数据结构 1、序列容器 主要有vector向量容器、list列表容器、deque双端队列容器 元素在容器中是无序的 2、排序容器 包括set容器,multiset多重集合容器、map映射容器、multimap多重映射容器 元素默认从 阅读全文
posted @ 2022-05-13 10:44 PamShao 阅读(252) 评论(0) 推荐(1)
摘要:上一节学习了C中的多态性:c++:-5,本节学习C的函数模版、数据结构以及排序查找操作: ##模版 ###函数模版 思考:如果重载的函数,其解决问题的逻辑是一致的、函数体语句相同,只是处理的数据类型不同,那么写多个相同的函数体,是重复劳动,而且还可能因为代码的冗余造成不一致性。 解决:使用模板 例: 阅读全文
posted @ 2022-05-08 19:40 PamShao 阅读(570) 评论(0) 推荐(0)
摘要:上一节学习C中的继承和派生:c++:-4,本节学习C的多态。 ##运算符重载 思考:用“+”、“-”能够实现复数的加减运算吗? 实现复数加减运算的方法 ——重载“+”、“-”运算符 运算符重载是对已有的运算符赋予多重含义,使同一个运算符作用于不同类型的数据时导致不同的行为。 C++ 几乎可以重载全部 阅读全文
posted @ 2022-05-07 12:57 PamShao 阅读(530) 评论(0) 推荐(0)
摘要:上一节学习了C的数组,指针和字符串,c++:-3。本节学习C的继承与派生: ##继承 ###继承和派生的关系 继承与派生是同一过程从不同的角度看 保持已有类的特性而构造新类的过程称为继承 在已有类的基础上新增自己的特性而产生新类的过程称为派生。 被继承的已有类称为基类(或父类) 派生出的新类称为派生 阅读全文
posted @ 2022-05-05 23:27 PamShao 阅读(358) 评论(0) 推荐(0)
摘要:上一节学习了C的函数:c++:-2,本节学习C的数组、指针和字符串 ##数组 ###定义和初始化 ####定义 例如:int a[10]; 表示a为整型数组,有10个元素:a[0]...a[9] 例如: int a[5][3]; 表示a为整型二维数组,其中第一维有5个下标(04),第二维有3个下标( 阅读全文
posted @ 2022-05-05 10:23 PamShao 阅读(479) 评论(0) 推荐(0)
摘要:上节介绍C++的函数介绍:c++:-1,本节学习类与对象 ##类与对象 ###定义 ####类定义 class 类名称 { public: 公有成员(外部接口) private: 私有成员 protected: 保护型成员 }; ####类内初始值 可以为数据成员提供一个类内初始值 在创建对象时,类 阅读全文
posted @ 2022-05-02 16:37 PamShao 阅读(315) 评论(0) 推荐(0)
摘要:上节介绍C基础:c++:-0,本节介绍C中函数使用。 ##函数 ###函数调用 调用函数需要先声明函数原型 嵌套调用: ###参数传递 在函数被调用时才分配形参的存储单元 实参可以是常量、变量或表达式 实参类型必须与形参相符 值传递是传递参数值,即单向传递 引用传递可以实现双向传递 常引用作参数可以 阅读全文
posted @ 2022-05-01 00:09 PamShao 阅读(430) 评论(0) 推荐(0)
摘要:现在开源库中经常见到python和C/C++混用的情况,现在研究一下 python调用C/C++程序主要可以分为3步: 编写C/C++实现程序。 将C/C++程序编译成动态库。 在Python中调用编译生成的库。 python在调用C/C++程序时有一些不同,需要注意。 ##原生态实现 ###pyt 阅读全文
posted @ 2022-04-28 15:50 PamShao 阅读(11870) 评论(0) 推荐(0)
摘要:需求:将一个C工程中的核心代码封装为静态文件:lib。 ##环境 工具:VC6.0++ 语言:c 以封装一个DES工程为例 ##封装 (1)新建一个静态工程 (2)新建c文件和h文件 (3)挑选封装内容 在原DES项目中,挑选合适的函数或者结构体: (4)写入c文件和h文件 编译生成lib文件,并将 阅读全文
posted @ 2022-04-23 15:18 PamShao 阅读(259) 评论(0) 推荐(0)
摘要:##了解 ###特征 1、继承 2、多态 打球:打乒乓球、打篮球 3、封装 例: class Clock { public: void setTime(int newH, int newM, int newS); void showTime(); private: int hour, minute, 阅读全文
posted @ 2022-04-21 10:14 PamShao 阅读(655) 评论(0) 推荐(0)
摘要:今日安装一个PSI库时,需要boost库,在此认识一下boost库,转载:macOS 中Boost的安装和使用 介绍 Boost是一个功能强大,构造精良,跨越平台,代码开源,完全免费的C++程序库。 共包含160余个库/组件,涵盖字符串与文本处理、容器、迭代器、算法、图像处理、模板元编程、并发编程等 阅读全文
posted @ 2022-04-06 17:59 PamShao 阅读(3879) 评论(0) 推荐(0)