<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[等闲的博客]]></title><description><![CDATA[仗剑走天涯]]></description><link>https://blog.youkuaiyun.com/qq_26685237</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_26685237]]></copyright><item><title><![CDATA[回头再看C++]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108938247</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108938247</guid><author>qq_26685237</author><pubDate>Tue, 06 Oct 2020 13:10:45 +0800</pubDate><description><![CDATA[学习c++有段时间了，但是之前一直是在看书，看视频，效果不明显，这点很糟糕，尤其是面临找工作的小伙伴。

之前我也是在找c++方面的工作，做了很多面试题，说实话，面试题还是很简单的，值得庆幸的是遇到了一个很好的程序员，面试的过程中交流了一番，收益良多。因为要做的工作涉及到很隐秘部分，所以工作的时候不能有网，全凭本事来进行敲代码，我想问下当下有多少人能做到呢？有多少人是没有网连一行代码都难写出来呢！这里包括工作3-4年的程序员，所以基础很重要，其实有没有网络的情况下看的都是基础。尤其是C++这门课，基础知识非]]></description><category></category></item><item><title><![CDATA[学习中的感悟之 C++]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108807128</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108807128</guid><author>qq_26685237</author><pubDate>Sat, 26 Sep 2020 03:15:21 +0800</pubDate><description><![CDATA[c++对于我来说挺难学的，我属于大学毕业后才开始接触C++吧！有的时候挺后悔大学没选择计算机专业，这样今天也不用这么辛苦的去学很多基础，但是反过来，自己觉得也不错，毕竟你比别人经历的多，也算是一种收获吧，想开了，这个世界你用什么眼光去看，那这个世界就是什么样的，没有好坏，也没有值不值得，只要自己敢闯敢拼就可以。回眸一笑时内心是开心的就ok。痛苦在人的一生中是常态，所以没必要。。。

这段时间一直在找工作，c++给了我人生一段不同的阅历。当被人拒绝时，内心挺不是滋味的！因为他们什么都没看到，就在那里妄自菲薄。]]></description><category></category></item><item><title><![CDATA[2、C++基础之]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108787118</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108787118</guid><author>qq_26685237</author><pubDate>Fri, 25 Sep 2020 02:21:04 +0800</pubDate><description><![CDATA[比较一下C和C++对于数据的管理：



c语言靠函数去处理数据，而c++则是将数据与函数包在一起。

C++的数据与函数：









我门在设计类的时候一定要注意他的成员变量是否带有指针。

我门设计的第一个·类Complex不带有指针，

C++Program代码的基本组成：



 1）C语言与C++语言头文件表示的不同之处：



2）头文件防卫式声明





综上说述就是为了写出大家风范的代码，一看就是专业的

通过以上索要关注的几点：

所设计的类的成员变量是否...]]></description><category></category></item><item><title><![CDATA[1、c++基础之class]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108787027</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108787027</guid><author>qq_26685237</author><pubDate>Fri, 25 Sep 2020 01:03:18 +0800</pubDate><description><![CDATA[前言：练就大家风范



类class我们要区分学习：

单个类：（叫基于对象）


	class with pointer members
	
      ---- Complex（Complex.h/Complex.cpp）


	class without pointer members
	
      ---- String（String.h / String.cpp）

多个类：（面向对象）

继承
	复合
	委托
说一下C++进化史

C++98（1.0版本）
	...]]></description><category></category></item><item><title><![CDATA[用Socket API建立建议TCP服务端，客户端]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108776489</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108776489</guid><author>qq_26685237</author><pubDate>Thu, 24 Sep 2020 18:13:16 +0800</pubDate><description><![CDATA[用SocketAPI建立简易TCP服务端

1、建立一个Socket

2、绑定接收客户端的连接的端口 bind

3、监听网络端口 listen

4、等待接收客户端连接 accept

5、向客户端发送一条数据 send

6、关闭socketclosesocket





用SocketAPI建立简易TCP客户端

1、建立一个socket

2、连接服务器connect

3、接收服务器信息recv

4、关闭socket closesocket


...]]></description><category></category></item><item><title><![CDATA[4、socketAPI]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108768957</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108768957</guid><author>qq_26685237</author><pubDate>Thu, 24 Sep 2020 11:13:39 +0800</pubDate><description><![CDATA[在windows上和linux上实现基础socket()

1、建立基础的socket网络工程。

vs2017 ----》创建新的解决方案，helloSocket --- &gt;空项目（利于跨平台）

2、#include&lt;windows.h&gt;与#include&lt;winSock2.h&gt;这两个头文件存在宏定义的冲突，

有两种解决办法：

1）#include&lt;winSock2.h&gt;放在#include&lt;windows.h&gt;之前。交换二者顺序（不推...]]></description><category></category></item><item><title><![CDATA[3、安装配置SVN版本控制管理工具]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108763179</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108763179</guid><author>qq_26685237</author><pubDate>Thu, 24 Sep 2020 10:46:00 +0800</pubDate><description><![CDATA[SVN工具能帮我们做什么？

核心功能：文档版本管理系统

适合对象：个人与团队都可以使用，企业中项目资源的重要管理工具。

举例：一个文件夹里的文当管理。

1、下载安装SVN服务器VisualSVN-Server

2、下载安装SVN客户端TortoiseSVN


...]]></description><category></category></item><item><title><![CDATA[2、建立一个易于管理的Windows VC++工程]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108749983</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108749983</guid><author>qq_26685237</author><pubDate>Wed, 23 Sep 2020 17:34:05 +0800</pubDate><description><![CDATA[跟随引导建立一个WindowsC++程序
	建立一个WindowsC++空项目：在控制台中输出HelloC++
	为什么不使用自动生成生成模板？
	为什么我们要从空项目开始创建代码文件？
	优化调整C++工程项目文件配置
Win32控制台项目 ----》空项目

创建项目 HelloCpp.pro 添加.cpp文件。


#include&lt;iostream&gt;
using namespace std;

int main(void)
{

    cout &lt;&lt; "h...]]></description><category></category></item><item><title><![CDATA[c++百万并发第一集]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108748855</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108748855</guid><author>qq_26685237</author><pubDate>Wed, 23 Sep 2020 11:47:59 +0800</pubDate><description><![CDATA[开发工具：

Windows：

Windows10 +VS 20xx

Linux：

Linyx(ubuntu 16.0 64位)/GCC/Gedit编辑器

Android：

Windows 10 +VS2015 +NDK +JDK +ADT +ANT



IOS/MacOS：

MacOS（MacOS 10.12 64位） +Xcode9



辅助工具：

虚拟机VmwarePlay，代码管理工具SVN，等辅助开发工具。



学习目标：

1、掌握多平台c++程序的设计，编...]]></description><category></category></item><item><title><![CDATA[总结----string；string_view]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108691520</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108691520</guid><author>qq_26685237</author><pubDate>Sun, 20 Sep 2020 15:10:53 +0800</pubDate><description><![CDATA[c++为什么在C语言字符串的基础上还要创建string类？？？

C风格字符串是以‘\0’ 结束。

例如：char myString[ ] = "hello";

 myString :

strlen()函数不包含结尾符 ‘\0’。

sizeof()关键字包含结尾符 ‘\0’。

strlen()针对的是字符指针。

sizeof（）针对的是字符数组。

例如：

char *str = "abcdef";

strlen(str);  // 输出结果为6

siezeof(str);...]]></description><category></category></item><item><title><![CDATA[STL----vector]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108585039</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108585039</guid><author>qq_26685237</author><pubDate>Mon, 14 Sep 2020 18:58:17 +0800</pubDate><description><![CDATA[vector三要素：

start；finish; end_of_shorage;


start  &lt;&lt;=====&gt;&gt;  begin()
finish &lt;&lt;=====&gt;&gt;  end()
end_of_storage  &lt;&lt;==========&gt;&gt; capacity()


iterator begin()
{
    return start;
}

iterator end()
{
    return fin...]]></description><category></category></item><item><title><![CDATA[总结---STL]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108564894</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108564894</guid><author>qq_26685237</author><pubDate>Mon, 14 Sep 2020 17:03:36 +0800</pubDate><description><![CDATA[STL六大部件

容器
	分配器
	算法
	迭代器
	适配器
	仿函数


时间复杂度：

O（1）或O（c）：常熟时间
	O（n）：线性时间
	O（nlog2N）：
	O（log2N）：次幂时间
	O（n2）：平方时间
	O（n3）：立方时间
	O（2N）：指数时间


前闭后开区间

[ )



begin()指向第一个元素。

end()指向最后一个元素的下一个元素。



范围for



for( auto elem : v)
{
    cout &lt;&lt; elsem &l...]]></description><category></category></item><item><title><![CDATA[总结--内存 + 智能指针]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108549516</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108549516</guid><author>qq_26685237</author><pubDate>Sat, 12 Sep 2020 16:53:27 +0800</pubDate><description><![CDATA[在内存这块我们主要讨论一下几方面：

C语言内存（new 、delete）、智能指针、内存泄漏







C语言内存（new 、delete）



在现代c++中，应该尽量避免使用底层内存，而是只用现代结构，例如容器、智能指针。

mallo()、与new的区别

malloc只负责申请你所指定的内存大小。而new不仅会分配正确的内存大小，还会调用相应的对象的构造函数以构建对象。

free()和delete的区别

使用free()时不会调用对象的析构函数，使用delete会调用对象的析构函...]]></description><category></category></item><item><title><![CDATA[总结-----继承和多态]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108533972</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108533972</guid><author>qq_26685237</author><pubDate>Fri, 11 Sep 2020 23:46:43 +0800</pubDate><description><![CDATA[之所以把继承和多态放在一起，是因为二者在关系上很难分开。

继承的概念：

在已有类的基础上创建新类。新类包含了原始类的数据成员和方法。

创建新类的主要原因就是添加和替换功能。

继承从两个方面去讨论：

添加：扩展原有类的成员（变量和方法），在继承的基础上扩展

继承的运行方式是单向的，父类与子类有着明确的关系，子类知道与父类的关系，但是父类不知道与子类的关系。

其实这样记不好记，从内存的角度去记比较好记。



从内存的大小上看很好区分。


Father* p_father = new Son; ]]></description><category></category></item><item><title><![CDATA[总结----重载]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108530604</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108530604</guid><author>qq_26685237</author><pubDate>Fri, 11 Sep 2020 13:47:45 +0800</pubDate><description><![CDATA[看过很多遍重载重载重载重载重载重载，但是就是不会（不能用自己的语言去完美的描述）。这是一个很糟糕的地现象。

总结至关重要：

概念要清晰：

重载定义：

严格意义上来讲，重载应该叫重载函数，因为只有函数才可以重载，

你不可能把


int a;
int b;


你不能把a，和b这两个变量看做是重载吧，所以记住以后没有重载这个词，全称叫重载函数。



重载函数定义：

如果在同一作用域内如果几个函数的名字相同，但是参数列表不同，我们叫这几个函数为重载函数。

重载函数是相对的概念，什么意思，就...]]></description><category></category></item><item><title><![CDATA[这是人生第二次面试]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/108530228</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/108530228</guid><author>qq_26685237</author><pubDate>Fri, 11 Sep 2020 11:08:45 +0800</pubDate><description><![CDATA[这是人生第二次面试：没有面试经验真可怕

这是第二次面试，面试前很忐忑，知识面很多，尤其c++，不知道面试官要问哪方面？

我为了有一个好的结果（对于自己来说），我没有去可以准备，目的就是验证一下自己，面试官问的很简单，但是我回答的不好。

我总结了两点：

1、项目上：

这个我觉得就是自己发挥，想到啥说啥，先不管对错。



2、知识上：

知识是死的，这点很好过，但是通过这次面试，我觉得总结了一个学习之道。学会总结很关键，学会对比很关键，通过面试来反馈的问题。面试官会问：重载与多态区别，我当时脑子已.]]></description><category></category></item><item><title><![CDATA[(传输层)TCP协议]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/106814737</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/106814737</guid><author>qq_26685237</author><pubDate>Wed, 17 Jun 2020 17:37:22 +0800</pubDate><description><![CDATA[首部格式

图释:



各个段位说明:

源端口和目的端口:　　各占 2 字节.端口是传输层与应用层的服务接口.传输层的复用和分用功能都要通过端口才能实现
	序号:　　占 4 字节.TCP 连接中传送的数据流中的每一个字节都编上一个序号.序号字段的值则指的是本报文段所发送的数据的第一个字节的序号
	确认号:　　占 4 字节,是期望收到对方的下一个报文段的数据的第一个字节的序号
	数据偏移/首部长度:　　占 4 位,它指出 TCP 报文段的数据起始处距离 TCP 报文段的起始处有多远.“数据偏移”的单位是 ]]></description><category></category></item><item><title><![CDATA[文件IO（系统IO）]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/106798307</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/106798307</guid><author>qq_26685237</author><pubDate>Wed, 17 Jun 2020 00:29:46 +0800</pubDate><description><![CDATA[文件IO（系统IO）

文件描述符（fd）是在文件IO中贯彻适中的类型。

文件描述符的概念：

实质是一个整形数，文件描述符优先使用当前可用范围内最小的一个。



说到stream首先想到的是stdio、stdout、stderr、

说到fd首先想到的是0、1、2





文件描述符的操作：open、close、read、write、lseek



标准IO基于系统IO

将文件IO与系统IO区别：



IO的效率问题：



文件共享：



原子操作：



程序中的重定向：d...]]></description><category></category></item><item><title><![CDATA[缓冲区]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/106784633</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/106784633</guid><author>qq_26685237</author><pubDate>Tue, 16 Jun 2020 14:53:32 +0800</pubDate><description><![CDATA[缓冲区的作用：大多数情况下是好事，合并系统调用。



行缓冲：换行时刷新，满了的时候刷新，强制刷新（标准输出是这样的，因为是终端设备）



全缓冲：满了的时候刷新，强制刷新（默认，只要不是终端设备）



无缓冲：如stderr，需要立即输出的内容

setvbuf



临时文件：

1、如何不冲突的创建文件



2、及时销毁



tempnam：

tempfile:




...]]></description><category></category></item><item><title><![CDATA[操作系统的中打开文件的最大句柄数]]></title><link>https://blog.youkuaiyun.com/qq_26685237/article/details/106771340</link><guid>https://blog.youkuaiyun.com/qq_26685237/article/details/106771340</guid><author>qq_26685237</author><pubDate>Mon, 15 Jun 2020 21:11:57 +0800</pubDate><description><![CDATA[LINUX系统中：


1、使用/proc文件系统来控制系统/proc/sys/fs
/proc/sys/fs/file-max
该文件指定了可以分配的文件句柄的最大数目。如果用户得到的错误消息声明由于打开文件数已经达到了最大值，从而他们不能打开更多文件，则可能需要增加该值。可将这个值设置成有任意多个文件，并且能通过将一个新数字值写入该文件来更改该值。

缺省设置：4096

2、/proc/sys/fs/file-nr
该文件与 file-max 相关，它有三个值： 
已分配文件句柄的数目
已使用文件句柄]]></description><category></category></item></channel></rss>