- 博客(27)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
原创 C++ static 修饰全局变量时的作用探究
答案是不会,实验表明,每一个源文件单独有一份属于自己的static 变量,所以一个源文件的更改不会影响到另一个源文件,这正是面试八股文里 “限制变量为本源文件可见的真正含义”。通常我们会回答,“static 修饰全局变量时代表限制这个变量为此源文件可见,其他源文件无法访问到这个变量“。作为一个c++开发者,我们面试时经常被问到 static 变量的作用,其中有一个问题是,但是之前我更多的是认为重点在于限制作用域,今天的一个小实验让我对它有了更深入的体会。的修改只有它自身感知到了,没有影响到 源文件B.
2024-02-09 23:48:11
943
原创 python 数据挖掘库orange3 介绍
orange3 是一个非常适合初学者的data mining library. 它让使用者通过拖拽内置的组件来形成工作流。让你不需要写任何代码就可以体验到数据挖掘和可视化的魅力。它的桌面如下,这里我创建了 3 个节点,分别是数据集、小提琴图,散点图其中 Datasets 是从 左边的 Data 组件库中拖拽过来的,Datasets 是 orange3 内置的数据集,比如非常常用的iris(鸢尾花) 数据集。双击桌面上的 Datasets 就能选择不同的数据集来作为下一步的数据来源。
2023-11-02 15:51:40
3162
原创 vscode 配置自定义code snippets 来快速生成你的常用代码
一、功能介绍展开就是这样的代码有一个小窍门是通过。例子:在做一些简单的配置之后,就可以通过输入inc + Tab生成下面这一个常用的代码。
2023-10-07 00:30:44
2561
原创 [bug] 记录version `GLIBCXX_3.4.29‘ not found 解决方法
看起来是安装mediapipe 的时候自动升级了 matplotlib 这个库,导致依赖的 libstd++.so 版本不满足了,GLIBCXX_3.4.29 is an object from libstdc++.so.6.0.29 . 需要 g++11才支持。在使用mediapipe 这个库的时候,首次使用出现 `GLIBCXX_3.4.29’ not found 错误,显示支持的 GLIBCXX版本,下面是升级后的。
2023-08-18 13:44:55
5006
2
原创 c++学习一、vscode搭建环境以及使用 makefile构建带include的项目
环境搭建安装 C/C++ 插件后,需要配置C++的一些环境 ctrl+shift+P 执行 C/C++: Edit Configurations(UI) 生成 c_cpp_properties.json,主要是要把c++ 标准选为 11, 否则代码里有些新出的语法特性会报错。{ "configurations": [ { "name": "Linux", "includePath": [ "${
2021-12-06 21:08:58
951
原创 理解golang调度器
go设计文档, 可扩展的 go调度器05/02/2012 Dmitry Vyukov dvyukov@google.com学习go runtime 包的过程中看了一些调度器的资料,翻译一下加强记忆。本文写在 2012年,是谷歌内部的go语言设计文档,之前的go 还在 v1.0时代,使用的是GM模型,GC 的STW时间在百ms级别。本文也是 Processor这个概念引入的时刻。现...
2020-03-08 22:44:38
334
原创 debian9 安装 python3.7 一键脚本
以下脚本需要在 root下 运行#install python3 on debian9# 安装必要的依赖apt updateapt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev wget#下载最新安装包cur...
2020-02-26 14:01:36
1315
原创 修复使用Go module后vscode 智能提示不能用的问题
在升级到 1.11后, go加入了go module这一特性, 支持相对路径的导入包,这样在$GOPATH之外的地方也可以进行项目开发。但是vscode中很多插件只能工作在 $GOPATH下, 其中最重要的代码智能提示也是如此代码提示主要由 github.com/mdemsky/gocode 这个模块负责, 为了支持go module, 要使用新的gocode模块,项目地址为 github.c...
2019-09-03 14:03:54
8904
2
原创 goLang中数组-切片-map等值的传递方式
新手常常被golang中的值传递和指针传递而搞的很困惑。这里总结一下,其实只要把握两点。golang默认都是采用值传递,即拷贝传递有些值天生就是是指针值传递和引用传递最简单的传进去一个字符串func changeAString(s string){ s = "new string" }func main(){ var a = "string" changeAStrin...
2019-04-04 00:32:22
1937
原创 go内存模型和channel 探究
在多个线程对同一个变量进行了读写操作的时候,由于不同的goroutine的执行顺讯不能确定,通常会带来不可预测的后果。要保证程序的并发安全,需要使用锁机制。go内存模型确定了在何种条件下一个goroutine中的read操作可以观测到另一个goroutine中的write操作。对于在不同的goroutine中操作的数据应该用channel保护起来,或者用其他同步机制,比如sync或者sync/...
2019-04-01 21:26:51
262
原创 Vue学习笔记第二天
昨天学习了vue的组件之后想自己开发一个博客的前端,由于是第一个项目,先不用ivew库,自己造个轮子。Layout 包括博客的 Header 和 Footer ,这两个组件是所有的页面都有的公共模块,放在跟组件App.vue里, props部分包括 用来切换主题的 theme,大标题,作者信息等。在为Header 嵌入logo 图片的时候,发现直接在 data里用 log: '../asset...
2019-03-31 15:59:45
176
原创 vue学习笔记第一天
vue是一套用于构建用户界面的渐进式框架,,其数据双向绑定和组件化开发的特点,vue已经有了很多的设计优美的UI库可供调用,让后端程序员也能方便地搭建简易的前端页面。我早就安装了nodeJS和npm 工具,所以直接安装脚手架就可以。#首先安装官方脚手架构建工具$cnpm install vue-cli#创建基于webpack模板的新项目$vue init webpack my-proje...
2019-03-31 02:03:52
442
原创 Django 更新后,老代码跑不动的坑
最近重新开始写Django,发现以前的代码都启动不了。开始执行./manage.py runserve后发现,import django 出错,但是在python 交互式命令行里不报错。开始猜测是因为本地安装了多个版本的python ,然而 manage.py 里清楚地写着 #!/usr/bin/env python ,应该是3.6版本, 在runtime中执行了 print(sys.vers...
2019-03-27 00:53:54
366
原创 mac上用docker装mysql的一些坑
先在宿主机上创建容器mysql挂载目录mkdir -p conf logs data启动容器并挂载目录docker run -p 3307:3306 --name mymysql -v $PWD/conf:/etc/mysql/conf.d -v $PWD/logs:/logs -v $PWD/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD...
2019-03-26 16:42:33
2271
原创 golang 闭包使用详解
golang 闭包使用详解对GO闭包的特性,用法, 还有其中的坑做一些归纳闭包的概念闭包= 函数行为 + 环境数据, 最简单的例子var a = 1 // globalfunc test(){a = 12}函数 test 访问了它作用域之外的变量,这就是闭包。go 官方文档里对闭包的解释是Go supports anonymous functions, which can...
2019-03-14 12:26:55
439
原创 装饰器模式 C++
装饰器模式(decorator)给一个对象动态地添加职责,而无需为了每一种可能的职责配置情概去创建特定的子类(派生类) 《代码大全》 第二版p102当需要为一个类增加新功能,我们第一想法通常是通过继承。而继承是有局限的,设想一个这样的例子,你在设计装修一个房间,你已经实现了许多的功能(类),比如这个类会为房间开个窗户,那个类会为房间挂一张画,这些类组合起来完成的功能就是最终房间的样子...
2018-12-06 23:19:30
338
原创 派生类和基类运算符重载
C++派生类和基类函数重载有时候派生类和基类重载同一个函数,这个函数的调用过程需要传入基类,那么在子类中的重载函数应该怎么写呢class Parent{private: int a, b;public: Parent(int x, int y){ a = x; b = y; } friend ostream& ...
2018-12-04 22:44:53
3614
1
原创 一个例子搞懂golang指针接收者和值接收者
接收者有两种,一种是值接收者,一种是指针接收者。顾名思义,值接收者,是接收者的类型是一个值,是一个副本,方法内部无法对其真正的接收者做更改;指针接收者,接收者的类型是一个指针,是接收者的引用,对这个引用的修改之间影响真正的接收者。package maintype foo struct { val int}// 需要改变成员变量的都定义为指针接收者func (f *foo) chang...
2018-11-27 23:38:59
3372
3
原创 系统中断和处理过程
cpu状态分为用户态和内核态(也被成为supervisor mode)两种,听名字也知道这两种权限不一样,前者只能使用普通命令,而后者可以使用所有的命令。特权指令是只能由操作系统使用的命令(内核级别), 比如启动I/O, 内存清零,修改cpu状态字,设置时钟,允许/禁止终端,停机等。非特权指令: 普通用户也能调用的命令,比如控制转移,算术运算, 访管指令(进入内核态, 取数指令等。从用户态到核心...
2018-11-25 23:15:56
8139
原创 mac忘记mysql密码的办法
平台 macbook promysql版本 5.7.16mac启动mysql服务命令为 mysqld;mysql -u root -p …密码错误重设密码的过程杀掉所有mysql相关进程ps aux|grep msyqlkill -7 pid跳过认证打开mysqldmysqld --skip-grant-tables &用空密码登陆mysql后更改...
2018-10-09 20:47:04
595
如何让osx中的程序重启时不从原有指令开始执行
2016-07-03
TA创建的收藏夹 TA关注的收藏夹
TA关注的人