- Dockerfile设置时区alpine
背景:最近在写golang相关代码。其中用到了时间操作的相关函数,如下:nowTime:=time.Now()nUnixEndTime:=nowTime.Unix()nHour,nMin,nSec:=nowTime.Clock()但代码跑在docker容器中,时间就取不对了。原因为容器中的时区与本机时区不一致。处理:设置docker容器的时区,Dockerfile如下设置:FROMalpineLA
- python之数据库操作
婵婵子~
python数据库python
python操作sqlserver数据库python标准数据库接口为pythonDB-API,具体可参考:https://wiki.python.org/moin/DatabaseInterfacesPython的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式操作各数据库。PythonDB-API使用流程:引入API模块。获取与数据库的连接。执行SQL语句和存储
- debian 12 系统容器更换阿里源和用户权限
背景:镜像emqx/emqx:5.8.4用户为emqx无权限系统为debian12使用root用户创建容器登录即可发现时间不对,换阿里源之后无法更新更换上海时区echo"Asia/Shanghai">/etc/timezoneln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtime更换阿里源该方式在阿里源只更新到debian11的文档www-data
- 【FR801xH】富芮坤FR801xH之SPI读写W25Q64
沧海一笑-dj
物联网专栏FR801xH富芮坤富芮坤SPIW25Q64ssp_send_datassp_recv_data
00.目录文章目录00.目录01.FR801xH概述02.FR801xH功能框图03.SPI相关类型3.1ssp_frame_type_t3.2ssp_ms_mode_t3.3ssp_cs_ctrl_op_t3.4ssp_int_type_t3.5ssp_int_status_t04.SPI相关API4.1ssp_init_4.2ssp_send_then_recv4.3ssp_send_data
- 使用Dockerfile自动设置时区
Roadinforest
dockerjenkins
问题描述一般的CICD过程中,Jenkins和Docker往往是交叉使用的,以达成自动化部署的目的。但是在安装某些依赖的时候,总是会跳出讨人厌的时区设置且需要人手动输入交互,大大影响了自动化效率。解决方法#设置时区环境变量并配置tzdataENVTZ=Asia/ShanghaiRUNln-fs/usr/share/zoneinfo/$TZ/etc/localtime&&\echo$TZ>/etc/
- 安装Hadoop集群&入门&源码编译
只年
大数据Hadoophadoop大数据分布式
安装Hadoop集群完全分布式先决条件准备三台机器NameStaticIPDESCbigdata102192.168.1.102DataNode、NodeManager、NameNodebigdata103192.168.1.103DataNode、NodeManager、ResourceManagerbigdata104192.168.1.104DataNode、NodeManager、Seco
- Happy-LLM 第二章 Transformer
HalukiSan
transformer深度学习人工智能
Transform架构图片来自[Happy-llm](happy-llm/docs/chapter2/第二章Transformer架构.mdatmain·datawhalechina/happy-llm),若加载不出来,请开梯子注意力机制前馈神经网络每一层的神经元都与上下两层的每一个神经元完全连接数据在其中只向前流动,用于处理静态的数据,进行图像识别或者分类,但是该网络没有记忆能力,数据在它里面没
- <script setup>中的setup作用以及和不带的区别对比
在Vue3中,setup函数是CompositionAPI的核心入口,其作用与“不带setup”(即传统OptionsAPI)的区别主要体现在代码组织、复用性、类型支持等方面。以下是具体分析:一、setup的作用初始化响应式状态在setup中,可以通过ref和reactive创建响应式数据,替代OptionsAPI中的data选项[1][3]。示例:setup(){constcount=ref(0
- Jenkins集成GitHub实现自动化打标签实战指南
ivwdcwso
运维与云原生jenkinsgithub自动化CI/CDdevops
本文将详细介绍如何使用Jenkins与GitHubAPI集成,实现自动化打标签的完整流程。以下是完整的Python脚本和详细解析。完整Python脚本#!/root/miniconda3/bin/pythonimportjsonimportboto3importosimportpytzimportargparsefromdatetimeimportdatetimefromgithubimportG
- mobaxterm终端sqlplus乱码问题解决
胡斌附体
数据库sqlplus字符集设置乱码
背景。使用mobaxterm终端连接linux。在查询数据库表注释时发现**?**中文乱码。影响对表的分析。完成以下三个编码设置再打开sqlplus查询含中文的数据就正常了总结。需要查看sqlplus的编码是什么SELECTparameter,valueFROMnls_database_parametersWHEREparameterIN('NLS_CHARACTERSET','NLS_NCHAR
- uni-app——uni-app background-image 绑定变量写法
dbt@L
uni-appuni-app
exportdefault{data(){return{//背景图backgroundImg:"@/static/demo.png",}},}
- ChatBox
ZI&Yue
python
importos#fromdotenvimportload_dotenvfromopenaiimportOpenAI#加载.env文件中的环境变量#load_dotenv()#初始化客户端(从环境变量读取配置)client=OpenAI(api_key=os.getenv("DEEPSEEK_API_KEY"),#从环境变量读取base_url=os.getenv("DEEPSEEK_BASE_U
- vue鼠标右键自定义菜单_vue添加自定义右键菜单的完整实例
王希亚
vue鼠标右键自定义菜单
一、写原生方法1.在所编辑的页面,需要添加右键菜单的元素,绑定contextmenu事件,如下:v-for="iteminresourceList":key="item.id"@click="handleClickFolder(item)"@contextmenu.prevent="openMenu($event,item)">...2.在页面编写右键菜单内容:内容3.在data()中定义需要的变
- 大小转换组件
叹一曲当时只道是寻常
前端javascript前端vue.js
一个小组件、用于转换大小为人类友好的格式{{formattedSize}}import{computed,defineProps}from'vue';constprops=defineProps();constsizeInBytes=computed(()=>{returntypeofprops.sizeInBytes==='string'?Number(props.sizeInBytes):pr
- Day.49
m0_64714591
机器学习深度学习人工智能
cbam训练:importtorchimporttorch.nnasnnimporttorch.optimasoptimfromtorchvisionimportdatasets,transformsfromtorch.utils.dataimportDataLoaderimportmatplotlib.pyplotaspltimportnumpyasnpplt.rcParams["font.fa
- Spring Boot多数据源实现方案深度对比:优缺点分析与实战指南
xiaoyu❅
java#springbootspringboot后端java
目录一、为什么需要多数据源?二、5大主流实现方案对比三、方案实现详解方案1:手动配置多DataSource(基础版)方案2:AbstractRoutingDataSource(动态路由)方案3:MyBatis-Plus多数据源(推荐)方案4:JPA多数据源配置方案5:ShardingSphere(企业级方案)四、事务管理解决方案1.分布式事务(XA协议)2.BASE柔性事务五、性能优化策略1.连接
- docker安装单机nacos、rocketmq、reids、xxl-job、minio、elasticsearch、kibana、gogs、nginx、mongo
丶会武术的流氓丶
dockerrocketmqrediselasticsearch
目录在右侧中部启动容器报错直接删除那个name后边的就可以安装nacos首先需要拉取对应的镜像文件:dockerpullnacos/nacos-server挂载目录:mkdir-p/mydata/nacos/logs/#新建logs目录mkdir-p/mydata/nacos/init.d/vim/mydata/nacos/init.d/custom.properties#修改配置文件修改cust
- Flutter学习之Base64加密及解密
Pillar~
FlutterFlutter
1、导包:import'dart:convert';2、使用方法:/**Base64加密*/staticStringencodeBase64(Stringdata){varcontent=utf8.encode(data);vardigest=base64Encode(content);returndigest;}/**Base64解密*/staticStringdecodeBase64(Stri
- MySQL EXPLAIN 关键字详解
烟沙九洲
数据库mysql数据库
EXPLAIN是用于分析SQL查询的执行计划。它能揭示MySQL如何执行查询(如是否使用索引、表连接顺序等),帮助我们定位性能瓶颈。基本用法EXPLAINSELECT*FROMusersWHEREage>25;输出列列名说明关键值示例id查询标识符(相同id表示同组查询,执行顺序从上到下;不同id值越大优先级越高)1(主查询)、2(子查询)select_type查询类型SIMPLE(无子查询)、P
- 微信小程序在用户拒绝授权后无法使用wx.opensetting再次获取定位授权
一渊之隔
jQuery微信小程序微信小程序小程序
_getLocation(callback,errCall){if(app.globalData.isLocationIng){setTimeout(()=>{this._getLocation(callback);},100);return;}app.globalData.isLocationIng=true;wx.getSetting({success:(resData)=>{//检查永久拒绝
- 索引失效的7中情况
qq_35460875
数据库sqljava
1.列与列对比索引失效情况某两列都建立了单独索引,下面情况不会走索引select*fromtestwhereid=c_id2.列存在NULL值索引失效情况我们在涉及数据库表的时候,应该尽量避免NULL值出现如果避免不了,最好也要给一个default默认值默认值可以为0,-1字符串默认值可以用“空字符串”3.NOT条件索引失效情况where条件中以下情况都会导致索引失效500;select*from
- 2024大模型秋招LLM相关面试题整理
AGI大模型资料分享官
人工智能深度学习机器学习自然语言处理语言模型easyui
0一些基础术语大模型:一般指1亿以上参数的模型,但是这个标准一直在升级,目前万亿参数以上的模型也有了。大语言模型(LargeLanguageModel,LLM)是针对语言的大模型。175B、60B、540B等:这些一般指参数的个数,B是Billion/十亿的意思,175B是1750亿参数,这是ChatGPT大约的参数规模。强化学习:(ReinforcementLearning)一种机器学习的方法,
- MySQL索引失效场景
烟沙九洲
数据库mysql数据库
MySQL索引优化是提升查询性能的关键手段之一,但有时使用不当会导致索引失效。今天我们一起来看看哪些情况下索引会失效。1、联合索引没有使用最左前缀失效示例:联合索引(a,b,c)SELECT*FROMtableWHEREb=1ANDc=2;--❌索引失效正确写法:WHEREa=?--✅WHEREa=?ANDb=?--✅WHEREa=?ANDb=?ANDc=?--✅--ps:MySQL对=条件的列,
- dify 默认端口被占用,更改端口号
你喜欢喝可乐吗?
ubuntuLLMdeeplearning服务器运维人工智能ubuntu
sudodockercompose-pdifyup-d在Ubuntu服务器上部署dify平台时,遇到以下错误:Errorresponsefromdaemon:driverfailedprogrammingexternalconnectivityonendpointdify-nginx-1(a9734951328f585778afbdbed279a81ca9ccebf8b4ba97d587216f5
- python训练60天挑战-day51
DAY51复习日作业:day43的时候我们安排大家对自己找的数据集用简单cnn训练,现在可以尝试下借助这几天的知识来实现精度的进一步提高kaggl的一个图像数据集;数据集地址:LungNoduleMalignancy肺结核良恶性判断三层卷积CNN做到的精度63%,现在需要实现提高。importosimportpandasaspdimportnumpyasnpfromsklearn.model_se
- DAY 51 复习日
忧陌606
Python打卡python
作业:day43的时候我们安排大家对自己找的数据集用简单cnn训练,现在可以尝试下借助这几天的知识来实现精度的进一步提高(一)Day43代码importosimportnumpyasnpimportpandasaspdimportmatplotlib.pyplotaspltimporttorchimporttorch.nnasnnimporttorch.optimasoptimfromtorch.
- Day36 复习日
cylat
python打卡深度学习机器学习人工智能python神经网络
目录一、对之前的信贷项目,利用神经网络训练下二、尝试进入nn.Module中,查看他的方法模型训练与评估相关参数管理相关模块管理相关设备相关钩子函数相关一、对之前的信贷项目,利用神经网络训练下importtorchimporttorch.nnasnnimporttorch.optimasoptimfromsklearn.model_selectionimporttrain_test_splitfr
- 【python深度学习】DAY 51 复习日
抽风的雨610
【打卡】Python训练营python深度学习开发语言
作业:day43的时候我们安排大家对自己找的数据集用简单cnn训练,现在可以尝试下借助这几天的知识来实现精度的进一步提高1.读取数据使用CIFAR-10图像数据importtorchfromtorchvisionimportdatasets,transforms#数据预处理transform=transforms.Compose([transforms.ToTensor(),transforms.
- Day51 复习日-模型改进
cylat
python打卡机器学习人工智能python神经网络深度学习
day43对自己找的数据集用简单cnn训练,现在用预训练,加入注意力等importtorchimporttorch.nnasnnimporttorch.optimasoptimfromtorchvisionimportdatasets,transforms,modelsfromtorch.utils.dataimportDataLoader,random_splitimportmatplotlib
- vsCode 扩展中 package.nls.json 文件的作用国际化支持
小妖666
vscodejsonide国际化多语言
package.nls.json代表英文语言文件{"command.favourite.addtofavourite":"AddtoFavourite","command.favourite.deletefavourite":"RemovefromFavourite","command.favourite.moveup":"MoveUp"}在package.json里可以用下面方式引用"title
- Spring4.1新特性——Spring MVC增强
jinnianshilongnian
spring 4.1
目录
Spring4.1新特性——综述
Spring4.1新特性——Spring核心部分及其他
Spring4.1新特性——Spring缓存框架增强
Spring4.1新特性——异步调用和事件机制的异常处理
Spring4.1新特性——数据库集成测试脚本初始化
Spring4.1新特性——Spring MVC增强
Spring4.1新特性——页面自动化测试框架Spring MVC T
- mysql 性能查询优化
annan211
javasql优化mysql应用服务器
1 时间到底花在哪了?
mysql在执行查询的时候需要执行一系列的子任务,这些子任务包含了整个查询周期最重要的阶段,这其中包含了大量为了
检索数据列到存储引擎的调用以及调用后的数据处理,包括排序、分组等。在完成这些任务的时候,查询需要在不同的地方
花费时间,包括网络、cpu计算、生成统计信息和执行计划、锁等待等。尤其是向底层存储引擎检索数据的调用操作。这些调用需要在内存操
- windows系统配置
cherishLC
windows
删除Hiberfil.sys :使用命令powercfg -h off 关闭休眠功能即可:
http://jingyan.baidu.com/article/f3ad7d0fc0992e09c2345b51.html
类似的还有pagefile.sys
msconfig 配置启动项
shutdown 定时关机
ipconfig 查看网络配置
ipconfig /flushdns
- 人体的排毒时间
Array_06
工作
========================
|| 人体的排毒时间是什么时候?||
========================
转载于:
http://zhidao.baidu.com/link?url=ibaGlicVslAQhVdWWVevU4TMjhiKaNBWCpZ1NS6igCQ78EkNJZFsEjCjl3T5EdXU9SaPg04bh8MbY1bR
- ZooKeeper
cugfy
zookeeper
Zookeeper是一个高性能,分布式的,开源分布式应用协调服务。它提供了简单原始的功能,分布式应用可以基于它实现更高级的服务,比如同步, 配置管理,集群管理,名空间。它被设计为易于编程,使用文件系统目录树作为数据模型。服务端跑在java上,提供java和C的客户端API。 Zookeeper是Google的Chubby一个开源的实现,是高有效和可靠的协同工作系统,Zookeeper能够用来lea
- 网络爬虫的乱码处理
随意而生
爬虫网络
下边简单总结下关于网络爬虫的乱码处理。注意,这里不仅是中文乱码,还包括一些如日文、韩文 、俄文、藏文之类的乱码处理,因为他们的解决方式 是一致的,故在此统一说明。 网络爬虫,有两种选择,一是选择nutch、hetriex,二是自写爬虫,两者在处理乱码时,原理是一致的,但前者处理乱码时,要看懂源码后进行修改才可以,所以要废劲一些;而后者更自由方便,可以在编码处理
- Xcode常用快捷键
张亚雄
xcode
一、总结的常用命令:
隐藏xcode command+h
退出xcode command+q
关闭窗口 command+w
关闭所有窗口 command+option+w
关闭当前
- mongoDB索引操作
adminjun
mongodb索引
一、索引基础: MongoDB的索引几乎与传统的关系型数据库一模一样,这其中也包括一些基本的优化技巧。下面是创建索引的命令: > db.test.ensureIndex({"username":1}) 可以通过下面的名称查看索引是否已经成功建立: &nbs
- 成都软件园实习那些话
aijuans
成都 软件园 实习
无聊之中,翻了一下日志,发现上一篇经历是很久以前的事了,悔过~~
断断续续离开了学校快一年了,习惯了那里一天天的幼稚、成长的环境,到这里有点与世隔绝的感觉。不过还好,那是刚到这里时的想法,现在感觉在这挺好,不管怎么样,最要感谢的还是老师能给这么好的一次催化成长的机会,在这里确实看到了好多好多能想到或想不到的东西。
都说在外面和学校相比最明显的差距就是与人相处比较困难,因为在外面每个人都
- Linux下FTP服务器安装及配置
ayaoxinchao
linuxFTP服务器vsftp
检测是否安装了FTP
[root@localhost ~]# rpm -q vsftpd
如果未安装:package vsftpd is not installed 安装了则显示:vsftpd-2.0.5-28.el5累死的版本信息
安装FTP
运行yum install vsftpd命令,如[root@localhost ~]# yum install vsf
- 使用mongo-java-driver获取文档id和查找文档
BigBird2012
driver
注:本文所有代码都使用的mongo-java-driver实现。
在MongoDB中,一个集合(collection)在概念上就类似我们SQL数据库中的表(Table),这个集合包含了一系列文档(document)。一个DBObject对象表示我们想添加到集合(collection)中的一个文档(document),MongoDB会自动为我们创建的每个文档添加一个id,这个id在
- JSONObject以及json串
bijian1013
jsonJSONObject
一.JAR包简介
要使程序可以运行必须引入JSON-lib包,JSON-lib包同时依赖于以下的JAR包:
1.commons-lang-2.0.jar
2.commons-beanutils-1.7.0.jar
3.commons-collections-3.1.jar
&n
- [Zookeeper学习笔记之三]Zookeeper实例创建和会话建立的异步特性
bit1129
zookeeper
为了说明问题,看个简单的代码,
import org.apache.zookeeper.*;
import java.io.IOException;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.ThreadLocal
- 【Scala十二】Scala核心六:Trait
bit1129
scala
Traits are a fundamental unit of code reuse in Scala. A trait encapsulates method and field definitions, which can then be reused by mixing them into classes. Unlike class inheritance, in which each c
- weblogic version 10.3破解
ronin47
weblogic
版本:WebLogic Server 10.3
说明:%DOMAIN_HOME%:指WebLogic Server 域(Domain)目录
例如我的做测试的域的根目录 DOMAIN_HOME=D:/Weblogic/Middleware/user_projects/domains/base_domain
1.为了保证操作安全,备份%DOMAIN_HOME%/security/Defa
- 求第n个斐波那契数
BrokenDreams
今天看到群友发的一个问题:写一个小程序打印第n个斐波那契数。
自己试了下,搞了好久。。。基础要加强了。
&nbs
- 读《研磨设计模式》-代码笔记-访问者模式-Visitor
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
import java.util.ArrayList;
import java.util.List;
interface IVisitor {
//第二次分派,Visitor调用Element
void visitConcret
- MatConvNet的excise 3改为网络配置文件形式
cherishLC
matlab
MatConvNet为vlFeat作者写的matlab下的卷积神经网络工具包,可以使用GPU。
主页:
http://www.vlfeat.org/matconvnet/
教程:
http://www.robots.ox.ac.uk/~vgg/practicals/cnn/index.html
注意:需要下载新版的MatConvNet替换掉教程中工具包中的matconvnet:
http
- ZK Timeout再讨论
chenchao051
zookeepertimeouthbase
http://crazyjvm.iteye.com/blog/1693757 文中提到相关超时问题,但是又出现了一个问题,我把min和max都设置成了180000,但是仍然出现了以下的异常信息:
Client session timed out, have not heard from server in 154339ms for sessionid 0x13a3f7732340003
- CASE WHEN 用法介绍
daizj
sqlgroup bycase when
CASE WHEN 用法介绍
1. CASE WHEN 表达式有两种形式
--简单Case函数
CASE sex
WHEN '1' THEN '男'
WHEN '2' THEN '女'
ELSE '其他' END
--Case搜索函数
CASE
WHEN sex = '1' THEN
- PHP技巧汇总:提高PHP性能的53个技巧
dcj3sjt126com
PHP
PHP技巧汇总:提高PHP性能的53个技巧 用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的函数译注: PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍
- Yii框架中CGridView的使用方法以及详细示例
dcj3sjt126com
yii
CGridView显示一个数据项的列表中的一个表。
表中的每一行代表一个数据项的数据,和一个列通常代表一个属性的物品(一些列可能对应于复杂的表达式的属性或静态文本)。 CGridView既支持排序和分页的数据项。排序和分页可以在AJAX模式或正常的页面请求。使用CGridView的一个好处是,当用户浏览器禁用JavaScript,排序和分页自动退化普通页面请求和仍然正常运行。
实例代码如下:
- Maven项目打包成可执行Jar文件
dyy_gusi
assembly
Maven项目打包成可执行Jar文件
在使用Maven完成项目以后,如果是需要打包成可执行的Jar文件,我们通过eclipse的导出很麻烦,还得指定入口文件的位置,还得说明依赖的jar包,既然都使用Maven了,很重要的一个目的就是让这些繁琐的操作简单。我们可以通过插件完成这项工作,使用assembly插件。具体使用方式如下:
1、在项目中加入插件的依赖:
<plugin>
- php常见错误
geeksun
PHP
1. kevent() reported that connect() failed (61: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastc
- 修改linux的用户名
hongtoushizi
linuxchange password
Change Linux Username
更改Linux用户名,需要修改4个系统的文件:
/etc/passwd
/etc/shadow
/etc/group
/etc/gshadow
古老/传统的方法是使用vi去直接修改,但是这有安全隐患(具体可自己搜一下),所以后来改成使用这些命令去代替:
vipw
vipw -s
vigr
vigr -s
具体的操作顺
- 第五章 常用Lua开发库1-redis、mysql、http客户端
jinnianshilongnian
nginxlua
对于开发来说需要有好的生态开发库来辅助我们快速开发,而Lua中也有大多数我们需要的第三方开发库如Redis、Memcached、Mysql、Http客户端、JSON、模板引擎等。
一些常见的Lua库可以在github上搜索,https://github.com/search?utf8=%E2%9C%93&q=lua+resty。
Redis客户端
lua-resty-r
- zkClient 监控机制实现
liyonghui160com
zkClient 监控机制实现
直接使用zk的api实现业务功能比较繁琐。因为要处理session loss,session expire等异常,在发生这些异常后进行重连。又因为ZK的watcher是一次性的,如果要基于wather实现发布/订阅模式,还要自己包装一下,将一次性订阅包装成持久订阅。另外如果要使用抽象级别更高的功能,比如分布式锁,leader选举
- 在Mysql 众多表中查找一个表名或者字段名的 SQL 语句
pda158
mysql
在Mysql 众多表中查找一个表名或者字段名的 SQL 语句:
方法一:SELECT table_name, column_name from information_schema.columns WHERE column_name LIKE 'Name';
方法二:SELECT column_name from information_schema.colum
- 程序员对英语的依赖
Smile.zeng
英语程序猿
1、程序员最基本的技能,至少要能写得出代码,当我们还在为建立类的时候思考用什么单词发牢骚的时候,英语与别人的差距就直接表现出来咯。
2、程序员最起码能认识开发工具里的英语单词,不然怎么知道使用这些开发工具。
3、进阶一点,就是能读懂别人的代码,有利于我们学习人家的思路和技术。
4、写的程序至少能有一定的可读性,至少要人别人能懂吧...
以上一些问题,充分说明了英语对程序猿的重要性。骚年
- Oracle学习笔记(8) 使用PLSQL编写触发器
vipbooks
oraclesql编程活动Access
时间过得真快啊,转眼就到了Oracle学习笔记的最后个章节了,通过前面七章的学习大家应该对Oracle编程有了一定了了解了吧,这东东如果一段时间不用很快就会忘记了,所以我会把自己学习过的东西做好详细的笔记,用到的时候可以随时查找,马上上手!希望这些笔记能对大家有些帮助!
这是第八章的学习笔记,学习完第七章的子程序和包之后