<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Add_a_cat的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Add_a_cat</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Add_a_cat]]></copyright><item><title><![CDATA[c++中的auto、const auto&]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/102523104</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/102523104</guid><author>Add_a_cat</author><pubDate>Sat, 12 Oct 2019 16:31:58 +0800</pubDate><description><![CDATA[先介绍一下auto、const：
    在块作用域、命名作用域、循环初始化语句等等  中声明变量时，关键词auto用作类型指定符。

   const:修饰符

接下来我们细细分析一下：
（1）auto
    auto即 for(auto x:range)  这样会拷贝一份range元素，而不会改变range中元素；

 但是！（重点)  使用for(auto x:vector&lt;bool...]]></description><category></category></item><item><title><![CDATA[WebSocket协议简介]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/101054454</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/101054454</guid><author>Add_a_cat</author><pubDate>Fri, 20 Sep 2019 11:19:41 +0800</pubDate><description><![CDATA[WebSocket使用浏览器进行全双工通信
WebSocket主要是为了解决Ajax和Comet里XMLHttlRequest附带的缺陷所引起的问题。
主要特点：


推送功能
支持由服务器向客户端推送数据的推送功能。


减少通信量
只要建立起WebSocket连接，就可以一直保持连接状态。减少连接开销，且部首信息很小。


握手-请求




握手-响应



WebSocket API
以下...]]></description><category></category></item><item><title><![CDATA[在vscode中打开conda的虚拟终端]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/101051759</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/101051759</guid><author>Add_a_cat</author><pubDate>Fri, 20 Sep 2019 10:13:10 +0800</pubDate><description><![CDATA[之前用vscode的时候，都是终端运行失败，然后vscode自动切换到python debug console的终端下。
虽然最后能运行，但是问题最终没有解决。
这次看了网上的例子，自己再做了些总结
先展示一下我的setting.json配置
{
    "python.pythonPath": "D:\\ProgramData\\Anaconda3\\envs\\fortrain\\python...]]></description><category></category></item><item><title><![CDATA[return from springboot]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/100538390</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/100538390</guid><author>Add_a_cat</author><pubDate>Wed, 04 Sep 2019 14:28:39 +0800</pubDate><description><![CDATA[package hello;

public class Greeting {

    private final long id;
    private final String content;

    public Greeting(long id, String content) {
        this.id = id;
        this.content = conte...]]></description><category></category></item><item><title><![CDATA[使用码云加快从github 上clone 项目]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/100254078</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/100254078</guid><author>Add_a_cat</author><pubDate>Mon, 02 Sep 2019 13:35:59 +0800</pubDate><description><![CDATA[在码云上新建一个仓库，注意选择导入已有仓库，就是git项目的地址
clone这个仓库到本地
修改仓库地址git remote set-url origin xxxx.git，改成github的地址，相当于从github上clone下来


...]]></description><category></category></item><item><title><![CDATA[InnoDB和MyISAM之间的比较]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/100140503</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/100140503</guid><author>Add_a_cat</author><pubDate>Thu, 29 Aug 2019 16:16:18 +0800</pubDate><description><![CDATA[InnoDB，是MySQL的数据库引擎之一，为MySQL AB发行binary的标准之一。InnoDB由Innobase Oy公司所开发，2006年五月时由甲骨文公司并购。与传统的ISAM与MyISAM相比，InnoDB的最大特色就是支持了ACID兼容的事务（Transaction）功能，类似于PostgreSQL。
当前InnoDB采用双轨制授权，一是GPL授权，另一是专有软件授权。
Xtra...]]></description><category></category></item><item><title><![CDATA[JDBC连接mysql]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/100077885</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/100077885</guid><author>Add_a_cat</author><pubDate>Mon, 26 Aug 2019 15:01:07 +0800</pubDate><description><![CDATA[使用JDBC连接MySql时出现：The server time zone value ‘�й���׼ʱ��’ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuratio...]]></description><category></category></item><item><title><![CDATA[HTTP协议的隐患]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/99403398</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/99403398</guid><author>Add_a_cat</author><pubDate>Tue, 13 Aug 2019 08:36:59 +0800</pubDate><description><![CDATA[无法确定请求发送至目标的Web服务器是否按真实意图返回响应的那台服务器。有可能是已伪装的Web服务器。
无法确定响应返回到的客户端是否是按真实意图接收响应的那个客户端。有可能是已伪装的客户端。
无法确定正在通信的对方是否具备访问权限。因为某些Web服务器上保存着重要的信息，只想发给特定用户通信的权限。
无法判定请求时来自何方、出自谁手。
即使是无意义的请求也会照单全收。无法阻止海量请求下的Dos...]]></description><category></category></item><item><title><![CDATA[散列表]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/97929388</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/97929388</guid><author>Add_a_cat</author><pubDate>Wed, 31 Jul 2019 16:27:20 +0800</pubDate><description><![CDATA[填个坑
散列表
正整数

将整数散列最常用方法是 除留余数法 。选择大小为素数M的数组，对于任意正整数k，计算k除以M的余数。不使用素数可能会导致散列不均，影响效率。

浮点数

如果键是 0 到 1 之间的实数，我们可以将它乘以 M 并四舍五入得到一个 0 至 M -1 之间的索引值。尽管这个方法很容易理解，但它是有缺陷的，因为这种情况下键的高位起的作用更大，最低位对散列的结果没有影响。修正这个...]]></description><category></category></item><item><title><![CDATA[linux 伪用户]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/97614942</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/97614942</guid><author>Add_a_cat</author><pubDate>Sun, 28 Jul 2019 15:17:40 +0800</pubDate><description><![CDATA[在Linux上运行软件的时候

一开始以为是设置的用户名，于是做了修改发现命令无法运行。

发现--user 后的用户名跟软件的运行没有关系，

就去查了一下，

--user nobody

这些都是系统中有一类用户称为伪用户（pseudo users）

这些用户在/etc/passwd文件中也占有一条记录，但是不能登录，因为它们的登录Shell为空。它们的存在主要是方便系统管理，满足相应的系...]]></description><category></category></item><item><title><![CDATA[React生命周期]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/94403402</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/94403402</guid><author>Add_a_cat</author><pubDate>Mon, 01 Jul 2019 18:57:19 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[原型链]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/93616625</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/93616625</guid><author>Add_a_cat</author><pubDate>Tue, 25 Jun 2019 13:48:12 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[事件传播]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/92072221</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/92072221</guid><author>Add_a_cat</author><pubDate>Sat, 15 Jun 2019 11:18:29 +0800</pubDate><description><![CDATA[此示例演示了如何以非常简单的方式触发和处理DOM中的事件。加载此HTML文档的BODY时，会在TABLE的顶行注册事件侦听器。事件侦听器通过执行函数stopEvent来处理事件，该函数更改表的底部单元格中的值。

但是，stopEvent还会调用事件对象方法event.stopPropagation，该方法可以防止事件进一步冒泡到DOM中。请注意，表本身有一个onclick事件处理程序，在单击表时...]]></description><category></category></item><item><title><![CDATA[React中key的作用]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91980061</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91980061</guid><author>Add_a_cat</author><pubDate>Fri, 14 Jun 2019 15:49:26 +0800</pubDate><description><![CDATA[https://react.docschina.org/docs/reconciliation.html#recursing-on-children




转载到csdn以方便查阅

比对同类型的组件元素

当一个组件更新时，组件实例保持不变，这样 state 在跨越不同的渲染时保持一致。React 将更新该组件实例的 props 以跟最新的元素保持一致，并且调用该实例的componentW...]]></description><category></category></item><item><title><![CDATA[npx 使用教程]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91964954</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91964954</guid><author>Add_a_cat</author><pubDate>Fri, 14 Jun 2019 12:51:45 +0800</pubDate><description><![CDATA[作者：阮一峰

日期：2019年2月 9日


npm 从5.2版开始，增加了npx命令。它有很多用处，本文介绍该命令的主要使用场景。



Node 自带 npm 模块，所以可以直接使用npx命令。万一不能用，就要手动安装一下。




$ npm install -g npx



调用项目安装的模块

npx想要解决的主要问题，就是调用项目内部安装的模块。比如，项目内部安装了...]]></description><category></category></item><item><title><![CDATA[类选择器获取动态加载的元素的方法]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91171435</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91171435</guid><author>Add_a_cat</author><pubDate>Fri, 07 Jun 2019 23:06:51 +0800</pubDate><description><![CDATA[在document 加载完成后才进行的渲染,

如果不确定可以尝试查看源代码能否找到对应元素,

解决办法可以通过 setTimeout 来延迟获取,或者 setInterval 抓取



在油猴上尝试了很多方法

包括：


// @run-at      document-end

document.onload= function() {}

$(document).ready(func...]]></description><category></category></item><item><title><![CDATA[DOM]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91127521</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91127521</guid><author>Add_a_cat</author><pubDate>Fri, 07 Jun 2019 14:11:43 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[将vscode设置到右键菜单中]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91126537</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91126537</guid><author>Add_a_cat</author><pubDate>Fri, 07 Jun 2019 11:21:31 +0800</pubDate><description><![CDATA[由于安装的时候没有设置好，导致不能用右键快速打开vscode

在网上查到了以下方法：

1.新建文件，拷贝代码进去

 ; 是注释


Windows Registry Editor Version 5.00 
 
; Open files 
[HKEY_CLASSES_ROOT\*\shell\Open with VS Code] 
@="Edit with VS Code" 
"Icon"...]]></description><category></category></item><item><title><![CDATA[argc argv]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91126495</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91126495</guid><author>Add_a_cat</author><pubDate>Fri, 07 Jun 2019 11:16:50 +0800</pubDate><description><![CDATA[参考：


http://webhome.phy.duke.edu/~rgb/General/c_book/c_book/chapter10/arguments_to_main.html

]]></description><category></category></item><item><title><![CDATA[namespace实例]]></title><link>https://blog.youkuaiyun.com/Add_a_cat/article/details/91049549</link><guid>https://blog.youkuaiyun.com/Add_a_cat/article/details/91049549</guid><author>Add_a_cat</author><pubDate>Fri, 07 Jun 2019 11:10:25 +0800</pubDate><description><![CDATA[#include &lt;iostream&gt;
using namespace std ;
namespace savitch1 
{
    void greeting();
}
namespace savitch2 
{
    void greeting();
}
void big_greeting();

int main()
{
    {
        using nam...]]></description><category></category></item></channel></rss>