![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
酒壮熊人胆
这个作者很懒,什么都没留下…
展开
-
去掉 VS2013中的红色波浪下划线
1、去掉红线下划线 :选择工具->选项->文本编辑器->C++->高级->禁用波浪线(改为True)2、显示行号:选择工具->选项->文本编辑器->所有语言->行号(选择)4、字体颜色设置:选择工具->选项->环境->字体和颜色(根据自己情况设置快捷键)...原创 2018-05-11 09:51:03 · 8129 阅读 · 1 评论 -
TCP服务器代码
这两天在看网络编程,写了点程序,发给大家看看.首先看看流程:然后直接上代码:#include <Windows.h>#include <iostream>using namespace std;#define SERVER_IP "192.168.0.168" //本地UD原创 2018-10-17 15:08:57 · 4948 阅读 · 0 评论 -
C++程序员必须看的书
一、C++:C++ Primer (学习C++的都懂的)高质量C/C++ (国内C/C++经典书籍)Effective C++ (提高代码质量的两部书)More effective C++深入探索C++对象模型STL源码剖析设计模式:大话设计模...原创 2018-10-10 09:05:47 · 4341 阅读 · 9 评论 -
设计模式
最近在看设计模式,所以将常用的设计模式列举出来方便以后查阅1、策略模式:它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。策略模式就是用来封装算法的,但在实践中,我们发现可以用它来封装几乎任何类型的规则,只要在分析过程中听到需要在不同时间应用不同的业务规则,就可以考虑使用策略模式处理这种变化的可能性。【组合:策略模式的Context很重要,在C...原创 2018-10-10 08:59:16 · 3824 阅读 · 0 评论 -
C++ 创建线程的方法
c++开发过程中,创建线程是必不可少的,今天就给大家说说c++创建线程的方法,主要介绍我常用的2种方法。第一种:CreateThreadHANDLE WINAPI CreateThread( LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD_START_ROUTINE lpStart...原创 2018-10-09 15:35:13 · 11161 阅读 · 0 评论 -
事件SetEvent、RestEvent、WaitForSingleObject与CreateEvent详解
SetEvent/ResetEvent分别将EVENT置为这两种状态分别是发信号与不发信号。WaitForSingleObject()等待,直到参数所指定的OBJECT成为发信号状态时才返回,OBJECT可以是EVENT,也可以是其它内核对象。CreateEvent 用来创建或打开一个命名的或无名的事件对象,对于它的其他解释,请自行百科,这里只简单描述它的两种常用用法!CreateEvent...原创 2018-10-09 14:01:42 · 23511 阅读 · 5 评论 -
windows系统中创建线程常用的函数及其区别
在windows系统中创建线程的函数有以下几个方法:CreadThread,AfxBeginThread,_beginthread,_beginthreadex。一、CreateThreadHANDLE WINAPI CreateThread( __in LPSECURITY_ATTRIBUTES lpThreadAttributes, __in ...原创 2018-10-09 13:09:10 · 5086 阅读 · 0 评论 -
C++ 虚析构函数与析构函数的区别
先看下面代码:class Parent{public: Parent(); ~Parent();};Parent::Parent(){ cout << "基类构造...." << endl << endl;}Parent::~Parent(){ cout << "基类析构..." << endl &原创 2018-10-09 11:34:14 · 6637 阅读 · 0 评论 -
C++类相关知识总结
1、类和对象类就是对对象的描述,主要从属性和行为两个方面描述。对于属性一般作成private , 行为作为public函数 (1)构造函数,初始化所有的成员变量,系统自动调用,可以重载(2)析构函数,在对象生命周期结束的时候自动被调用调用,不准重载构造函数和析构函数都是系统自动调用的,析构函数可以通过对象调用A a;a.A(); //error 构造函数是不能手工调用的a.~A...原创 2018-10-15 15:45:18 · 4685 阅读 · 0 评论 -
事件相关知识
注:Windows下创建的Object都会被赋予一个状态量。如果Object被激活了,或者正在使用,那么该Object就是无信号,也就是不可用;另一方面,如果Object可用了,那么它就恢复有信号了。一、WaitForSingleObject()函数1、格式DWORD WaitForSingleObject( HANDLE hHandle, DWORD dwMilliseconds);有两...原创 2018-10-08 15:52:41 · 3866 阅读 · 0 评论 -
VS显示控制台窗口
有的时候我们在完成编程后, 运行发现没有控制台窗口, 比如我们用Qt编写的界面软件, 又想看到我们在代码中添加的打印日志信息,这个时候加上控制台窗口就能实现方法:项目–> 属性–>链接器–>系统–>子系统(选择控制台即可)...原创 2018-09-27 09:03:03 · 41059 阅读 · 4 评论 -
va_start、va_end、va_arg、va_list、fprintf、 vfprintf用法解释
今天有个需求写文件,所有研究了一下标题的函数:首先要使用va_start等这些方法需要包含头文件:#include<stdarg.h>直接上代码说明:int MyWriteFile(char *format, ...){ va_list paramList; char *para; //va_start函数来获取参数列表中的参数, 使paramList指向第一个可选参...原创 2018-10-11 16:37:53 · 4968 阅读 · 2 评论 -
C++ STL基本容器的使用
C++中有两种类型的容器:顺序容器和关联容器。顺序容器主要有vector、list、deque等。其中vector表示一段连续的内存,基于数组实现,list表示非连续的内存,基于链表实现,deque与vector类似,但是对首元素提供插入和删除的双向支持。关联容器主要有map和set。map是key-value形式,set是单值。map和set只能存放唯一的key,multimap和multise...原创 2018-06-28 17:15:04 · 4353 阅读 · 0 评论 -
C++数组求和用自带的库超级方便
C++数组求和用自带的库超级方便,而且也达到代码更加简洁的目的。你只需要做2步:1、导入库文件include 2、添加空间名 using namespace std;然后就可以直接使用 : accumulate(arrayName, arrayName + 数组长度, 数组起始位)demo: int array[6] = {1,2,3,4,5,6}; in...原创 2018-07-17 09:53:44 · 19883 阅读 · 5 评论 -
vs 无法将参数 1 从“const char *”转换为“LPCWSTR” 解决办法
选择项目->属性->常规->字符集(选择多字节就ok)如果还是编译不过 查看项目->属性->C++->预处理器->预处理定义中是否有UNICODE如果有去掉就ok 然后重新编译...原创 2018-06-01 13:56:20 · 26329 阅读 · 8 评论 -
TCP客服端代码
这两天在看网络编程,写了点程序,发给大家看看.首先看看流程:然后直接上代码:下面是客户端代码,如果想了解服务器端的代码请查看https://blog.csdn.net/u011394598/article/details/83110014#include &lt;Windows.h&gt;#include &lt;iostream&gt;using namespace std;...原创 2018-10-17 15:11:36 · 4054 阅读 · 0 评论