<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[OneTapMan的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/OneTapMan</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; OneTapMan]]></copyright><item><title><![CDATA[TCPIP网络编程笔记]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/106360183</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/106360183</guid><author>OneTapMan</author><pubDate>Tue, 26 May 2020 17:05:59 +0800</pubDate><description><![CDATA[socket（套接字）
源于UNIX，被BSD发扬光大

实际上是进程与进程之间的通信方式，socket是进程间通信的接入点
基于BSD的POSIX标准
万物皆文件的泛型，在Linux中可以像操作文件一样操作socket
套接字描述符的本质是文件描述符
可以对套接字进行close，dup2，read，write，select等操作
字节序的问题，大端和小端

socket()函数
int socket(int protofamily,int type,int protocol);


协议族（protoco]]></description><category></category></item><item><title><![CDATA[侯捷C++面向对象]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/103457168</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/103457168</guid><author>OneTapMan</author><pubDate>Tue, 26 May 2020 16:59:45 +0800</pubDate><description><![CDATA[头文件中需要加入防卫声明


#ifndef XXX
#define XXX

#endif

类的构造函数中，使用列表初始化初始化对象的数据成员

区别：变量的设定，初始化，赋值，使用列表初始化等于在初始化就将值放进去，如果在大括号里面写的话，等于放弃了初始化的阶段，直接在赋值阶段设定对象数据成员的值，后者的效率比前者差

类一般分两类：一类带指针，一类不带指针，不带指针的类大多不用写析构函数
...]]></description><category></category></item><item><title><![CDATA[BS架构和CS架构]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/104769858</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/104769858</guid><author>OneTapMan</author><pubDate>Tue, 10 Mar 2020 11:07:47 +0800</pubDate><description><![CDATA[介绍

BS架构指的是browser，server架构，web应用，可以实现跨平台，客户端零维护，但是个性化能力低，响应速度比较慢
CS架构指的是client，server架构，桌面级应用，响应速度快，安全性强，个性化能力强

区别

C/S用户固定，一般只应用于局域网当中，要求计算机拥有相同的操作系统，如果对于不同的操作系统还要开发相应的版本，并且对于计算机配置要求也比较高
B/S要求有操作系统...]]></description><category></category></item><item><title><![CDATA[Linux中的阻塞，非阻塞，异步，同步]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/104769803</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/104769803</guid><author>OneTapMan</author><pubDate>Tue, 10 Mar 2020 11:06:07 +0800</pubDate><description><![CDATA[UNIX网络编程中的五种IO模型

blocking IO 阻塞IO
none blocking IO 非阻塞IO
IO multiplexing IO多路复用
signal driven IO 信号驱动IO
asynchronous IO 异步IO
前四种属于同步IO,最后一种属于异步IO，信号驱动的IO不常用

阻塞IO
Linux中所有的socket默认都是阻塞的，当用户进程调用了recvf...]]></description><category></category></item><item><title><![CDATA[位运算]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/103673527</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/103673527</guid><author>OneTapMan</author><pubDate>Mon, 23 Dec 2019 21:10:38 +0800</pubDate><description><![CDATA[逻辑运算符
&amp; 按位与 and

当两位都为1时，结果为1，其余结果为0

^ 按位异或

不同则为1，相同则为0，仅当其中一位为1，结果为1，其余结果为0

| 按位或 or

当其中一位为1时，运算结果为1；仅当两位都为0时，运算结果为0

~ 按位取反

将0和1全部取反，即0变为1，1变为0


...]]></description><category></category></item><item><title><![CDATA[Anaconda命令和遇到的问题以及解决办法]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/100977273</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/100977273</guid><author>OneTapMan</author><pubDate>Wed, 18 Sep 2019 11:39:45 +0800</pubDate><description><![CDATA[pip和anaconda的常用命令

pip list 列出当前已经存在的包

pip install &lt;包名&gt; 安装这个包

pip uninstall &lt;包名&gt; 删除一个包

#在安装或者删除一个包的同时，会将这个包的依赖一并安装或者移除

pip search &lt;包名&gt; 在当前list中查找这个包

pip install &lt;包名&gt; --upg...]]></description><category></category></item><item><title><![CDATA[Image Processing]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/100577393</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/100577393</guid><author>OneTapMan</author><pubDate>Fri, 06 Sep 2019 16:17:01 +0800</pubDate><description><![CDATA[opencv

cv.imread()用于读取一个图片，即使图片的名称错误或者该图片不在工作目录下，也不会抛出异常，而是返回None


import numpy as np
import cv2 as cv

img=cv.imread("test.jpg",1)

第一个参数为打开图片的名称，第二个参数为打开方式

cv.IMREAD_COLOR，加载彩色图片，这是默认设置，可以用数字1代表
...]]></description><category></category></item><item><title><![CDATA[Linux基本命令]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/98632256</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/98632256</guid><author>OneTapMan</author><pubDate>Tue, 06 Aug 2019 17:00:39 +0800</pubDate><description><![CDATA[系统信息

arch 显示机器的处理器架构
	uname -m 显示机器的处理器架构
	uname -r 显示正在使用的内核版本
	dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
	hdparm -i /dev/hda 罗列一个磁盘的架构特性
	hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
	cat /proc/cpuinfo 显示CPU...]]></description><category></category></item><item><title><![CDATA[C++中定义的配套类型总结]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/96205303</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/96205303</guid><author>OneTapMan</author><pubDate>Wed, 17 Jul 2019 11:11:10 +0800</pubDate><description><![CDATA[C++中为大多数的标准类库定义了几种配套的类型，这些类型体现了标准库类型与机器无关的特性

string类

string类中size（）函数的返回值的类型为由string定义的size_type类型，是一个无符号类型的值，且可以存放下任何string的长度

vector类

vector类中size（）函数返回值的类型为由vector定义的size_type类型，是一个无符号类型的值

要使用...]]></description><category></category></item><item><title><![CDATA[操作系统]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/87454233</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/87454233</guid><author>OneTapMan</author><pubDate>Mon, 18 Mar 2019 12:23:40 +0800</pubDate><description><![CDATA[操作系统把CPU抽象成进程，磁盘抽象成文件，内存抽象成地址空间，使用户可以更方便使用

操作系统的层次结构：硬件-&amp;gt;操作系统-&amp;gt;应用软件

操作系统界面属于外壳(shell)，操作系统主要研究内核(kernel)

主要的三大硬件：CPU，内存，磁盘

CPU：CPU调度

内存：物理内存管理，虚拟内存管理

磁盘：文件系统管理，中断处理与设备驱动

并发：操作系统中同时存在多个...]]></description><category></category></item><item><title><![CDATA[C++中sizeof，strlen()，size()，length()的区别]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/82420950</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/82420950</guid><author>OneTapMan</author><pubDate>Wed, 05 Sep 2018 17:29:46 +0800</pubDate><description><![CDATA[strlen()，size()，length()用于求字符串的长度，sizeof用于求对象的字节大小

sizeof本质上是一个运算符，它会返回保证能容纳所建立的最大对象的空间大小，其值在编译时便计算好了，所以不能用于计算动态分配的内存。在计算基本类型的字节大小时，基本不会出现问题，但发现在计算结构体和共用体的大小时发现，结构体和共用体大小并不是它们成员的字节大小的简单相加

sizeof

si...]]></description><category></category></item><item><title><![CDATA[C++输入方法总结]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/81697853</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/81697853</guid><author>OneTapMan</author><pubDate>Tue, 04 Sep 2018 16:01:44 +0800</pubDate><description><![CDATA[ 

 

最近在看C++ primer plus时经常会混淆各种输入方法，例如cin，cin.get()，cin.getline()，getline()等，所以想做一个总结

输入原理

程序的输入都有一个缓冲区，当一个程序结束输入时，会将输入的数据都放到输入缓冲区，cin的函数都是从输入缓冲区取数据的，所以当输入缓冲区有残留数据时，cin会从输入缓冲区拿数据而不会请求输入


char str...]]></description><category></category></item><item><title><![CDATA[C++基础知识]]></title><link>https://blog.youkuaiyun.com/OneTapMan/article/details/80964288</link><guid>https://blog.youkuaiyun.com/OneTapMan/article/details/80964288</guid><author>OneTapMan</author><pubDate>Tue, 10 Jul 2018 15:46:00 +0800</pubDate><description><![CDATA[ 

预备知识

1，源代码知识

 

给C++源文件命名时要使用正确的后缀，后缀一般由一个句点和多个字符组成，这些字符被称作扩展名

 

UNIX：C、cc、cxx、c（UNIX是区分大小写的，C和c这两个扩展名都有效，实际上标准C才使用c，C++使用C）
	GNU C++：C、cc、cxx、cpp、c++
	Microsoft Visual C++：cpp、cxx、cc
 

2，编译与链...]]></description><category></category></item></channel></rss>