自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Coder

Coder

  • 博客(211)
  • 资源 (10)
  • 收藏
  • 关注

原创 c++11 thread error

bug 记录

2022-11-04 16:57:10 35

原创 虚拟机配置固定IP地址

虚拟机配置固定IP地址第一步安装虚拟机服务器的时候网络适配器选择 桥接模式第2步 修改服务器配置 配置地址第三步 配置dns#地址#/etc/resolvconf/resolv.conf.d/base修改base文件nameserver 8.8.8.8第四步 重启服务器 sudo reboot...

2019-01-04 16:56:20 574

转载 软连接硬连接

在学习过硬链接和软连接的知识后,我们在做实验的过程中会发现,创建的硬链接会占用磁盘的空间,而我们学习过成中了解到,硬链接只是创建一个文件与源文件相同的inode号,那怎么还会占用磁盘空间呢?i_f15.gif带着疑问,跟随夹克来进行一些实验进行验证并得出结论:首先我们再来回顾一下关于 硬链接与软连接的知识:硬链接的特点: i_f48.gifl 创建硬链接会增加额外的记录项以引用文件...

2018-10-09 16:47:43 282

原创 C++dll使用桥接模式提供接口

C++中的接口: C++中的接口一般设计为不包含成员变量的抽象类,这样就只有接口的功能。 接口设计尽量不要涉及到成员变量,接口与实现要尽可能的分离,实现部分改变,不需要重现编译!代码如下:`class PERSONDLL_EXPORT PersonApi{public: static PersonApi* CreatePersonApi(); static v...

2018-08-15 15:04:39 280

原创 冒泡排序法改进

void BubbleSort(int a[], int n) { int m = n -1; int nFalg = 0; int count = 0; while ( m > 0) { printf(“第%d次冒泡\n”, ++count); for (int j = 0; j < m; ++j...

2018-07-30 16:35:56 366

原创 static变量 在main函数之前执行 利用这个特性实现 线程安全的单例模式

class static_test{public: static_test(){}; static int static_print();private: static int nNum;};int static_test::static_print(){ printf("This is static!!\n"); return 1;}...

2018-03-30 17:09:26 277

原创 C++ 多态是针对到具体某个函数,子类static静态成员函数不能重写虚函数,会使得该函数的动态绑定失效

class A { public: virtual void PrintContent() { printf("AAA\n"); } virtual void func() { printf("aaaa\n"); } }; class B : public A { public: ...

2018-03-30 15:41:04 487

原创 error LNK2001: unresolved external symbol __imp__PathFileExistsA@4

解决方法: 缺少shlwapi.lib

2016-10-28 13:37:23 1847

转载 完成端口与高性能服务器程序开发

早在两年前我就已经能很熟练的运用完成端口这种技术了,只是一直没有机会将它用在什么项目中,这段时间见到这种技术被过分炒作,过分的神秘化,就想写一篇解释它如何工作的文章.想告诉大家它没有传说中的那么高深难懂!有什么错误的地方还请高人指正.转载请注明出处及作者,谢谢! 以一个文件传输服务端为例,在我的机器上它只起两个线程就可以为很多个个客户端同时提供文件下载服务,程序的性能会随机器内CPU个数的增加而线性

2016-10-19 17:25:36 876

原创 MySQL导入sql脚本错误:2006 - MySQL server has gone away

MySQL导入大批量数据的时候超出了默认允许最大的数据包所以就提示2006 - MySQL server has gone away 于是找到my.cnf,在[mysqld]加入:max_allowed_packet = 500Mwait_timeout=2880000interactive_timeout = 2880000

2016-09-02 16:20:51 501

原创 关于 inet_ntoa函数

函数声明:char *inet_ntoa (struct in_addr);   返回点分十进制的字符串在静态内存中的指针。 linux下:所在头文件:include “stdafx.h”include include pragma comment(lib,”ws2_32.lib”)int _tmain(int argc, _TCHAR* argv[]) { struct sock

2016-09-01 11:57:09 7603

原创 大端 小端

在不同的CPU中,4字节整形数值1在内存空间的保存方式是不同的、4字节整数型值1可用2进制表示如下: 00000000 00000000 00000000 00000001 有些CPU用这种方式,另外一些用: 00000001 00000000 00000000 00000000来保存因为保存方式存在差异。所以在收发数据的时候必须考虑这个;字节序 和 网络自己序 CPU向内存保存数据的方式有

2016-08-31 17:16:22 1283

原创 关于 recv函数

/* int recv( SOCKET s, char FAR *buf, int len, int flags);(1)recv先等待s的发送缓冲中的数据被协议传送完毕,如果协议在传送s的发送缓冲中的数据时出现网络错误,那么recv函数返回SOCKET_ERROR,(2)如果s的发送缓冲中没有数据或者数据被协议成功发送完毕后,recv先检查套接字s的接收缓冲区,如果s接收缓冲区中没有

2016-08-31 16:43:48 2088

原创 成员变量在栈上还是堆上?

class CTest { public: int iCount; };iCount在栈上还是堆上取决于类对象的声明方式;如果是: CTest = new CTest(); 那么iCount在堆上;如果是: CTest cTest; 那么iCount在栈上;

2016-08-22 15:53:32 3472 1

原创 线程传递结构体参数

声明一个结构体: struct Info { CString strInfo; int nCopunt; }; 在CPP文件在创建一个线程: Info info; info.nCopunt = 100; CString str; str = "Hello"; info.strInfo = str; HANDLE

2016-08-22 15:47:09 5218

原创 PostMessage 和 SendMessage传指针问题

PostMessage 和 SendMessage传指针问题最近在用 PostMessage的时候发现一个问题,传一个结构体指针,等到了消息函数的时候,指针的值已经改变,测试很多次无效后,尝试改为SendMessage,问题得到解决!后面查原因: SendMessage:调用系统的消息处理函数对发送的消息进行处理,等待消息处理完成,该函数返回。PostMessage:将需要处理的消息发送到系统消息

2016-08-16 15:36:41 3573 1

原创 windows下 判断当前时间是否大于某个时间

/**************************************************************/ /* 功能:判断当前时间是否大于某个时间点 */ /**************************************************************/ bool Time(void) { CTime currentTim

2016-05-16 12:08:08 4515

原创 ios 第二课 类的初始化

类的初始化 :1)init初始化方法(构造方法):一般和alloc一起调用,用于给成员变量初始化。2)id类型:相当于C中的void*,可以指向任何对象,不能加*。3)带参的初始化方法(自定义的初始化方法),是实例方法,必须以initWith开头 。      例如:-(id)initWithSID: (NSString*)aSid name:(NSString*)aName

2015-12-10 22:37:36 361

原创 ios第一课 关于类的声明和实现

//总结:1:+ 代表方法为 类方法;- 代表方法为 实例方法;2://在同一个类内方法不能重载,即方法的签名不能完全一样;但是类方法和实例方法签名可以相同//方法的签名 和 参数类型、参数名称无关//方法签名和方法的返回值类型无关;3://实例方法可以直接引用类的实例变量和其他实例方法//类的方法都是public的,没有protected 和 private方法 ,但是如果一个方法 只是出现在类

2015-12-08 22:48:56 1588

转载 修改VC6项目名称

为何要改项目名称:=====================================如:我的项目和另一个重名了,在VC中如何才能改成别的项目名字。     我想重用别人的项目框架,但我不想用原来的项目名称。 修改方法:=====================================假设原项目名:vssOld.dsp要改成的新

2015-11-09 10:29:40 2058

原创 创建者模式

建造者模式的定义将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示:《大话设计模式》举了一个很好的例子——建造小人,一共需建造6个部分,头部、身体、左右手、左右脚。与工厂模式不同,建造者模式是在导向者的控制下一步一步构造产品的。建造小人就是在控制下一步步构造出来的。创建者模式可以能更精细的控制构建过程,从而能更精细的控制所得产品的内部结构 对于客户来说,只需知道导

2015-11-06 16:16:20 520

原创 CrossAPP第一课

1:坐标系:CrossApp采用的坐标系是屏幕坐标系,即左上角为原点,向右为X轴增长方向、向下对应Y轴增长方向视图类CAView是整个CrossApp引擎最基本的类,负责将各式各样的界面呈现出来,我们在App中所能看见的的一切界面其实就是一个个CAView的组合。CAView负责在屏幕上定义矩形区域,在展示用户界面及响应用户界面交互方面发挥关键作用。每个视图对象要负责渲染试图矩形区域中

2015-09-17 22:31:28 1000

原创 error LNK2001: unresolved external symbol __endthreadex,unresolved external symbol __endthreadex

如果你在链接过程中收到错误信息 “_beginthreadex is undefined”,意思是你误用了单线程版的 runtime library 。你必须改用多线程版本。1:打开“Project”菜单——〉“Setting”菜单项——〉General选项卡在Microsoft Fountion Classes:中选择:Use MFC in Static Library. 2:再在C/C 选项

2015-06-30 14:44:11 1783

原创 socket基础

服务端代码void TCPServer(){ //创建服务器socket SOCKET socketServer = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if (INVALID_SOCKET == socketServer) { return; } //绑定IP和端口 str

2015-06-14 12:43:31 775

原创 char 转 double

#include "stdafx.h"#include <stdio.h>void charToDouble(const char* ch, double& res ){ sscanf(ch,"%lf",&res);}int main(int argc, char* argv[]){ char test[256] = "12345.678";// double x = 0

2015-06-04 10:48:03 9869

原创 double类型向上取整 和向下取整

#include "stdafx.h"#include <math.h>#include <stdio.h>int main(int argc, char* argv[]){ double a = 77.001; double b = ceil(a); printf("b = %.3f\n",b); double c = 77.999; double d =

2015-06-03 11:29:02 19585 1

原创 子类继承父类,但是每个子类又不能全部拥有基类的属性

编写一个动物基类,动物基类的属性有跑,飞,游泳三个,让猪、鱼、鸟这三个类继承动物类,但是每个对应的只能有自己特有的属性,比如猪肯定不能飞(飞猪?肥猪)!#include "stdafx.h"#include <iostream>using namespace std;enum ANIMAL_TYPES{ fish, bird, pig,}; //枚举template

2015-05-31 11:58:01 1786 1

原创 静态类成员函数无法访问普通的成员变量

class A{ int m_i;public: static void f() { m_i=666; //这是非法的,这个等价于this->m_i=666,而静态方法没有this } static void f(A&a) { a.m_i=666; //这样就可以 }};静态成员函数不属于任何一个类

2015-05-17 21:52:30 2134

原创 向cocos攻城狮进军之HelloWorld

1:当我们找到一个项目的时候打开编译不通过,有可能是因为版本不同的原因,那么我们如何查看cocos2d-x源码版本 在工程目录当中libcocos2d下面\cocos2dx\cocos2d.cpp#include "cocos2d.h"NS_CC_BEGINconst char* cocos2dVersion(){ return "cocos2d-x 2.2.6";}NS_CC_END

2015-05-09 23:29:56 731

原创 获取系统版本信息和处理器信息

// GetSystemInfo.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream>#include <windows.h>#include <iomanip>using namespace std;int main(){ SYSTEM

2015-05-07 17:36:56 876

原创 VC Preprocessor definitions

在项目上点击右键->setting->C/C++->Preprocessor definitions在里面加入自定义预编译头_SB2测试代码:include “stdafx.h”include include ifdef _SBprintf("调用了sb\n");elif _SB2printf("调用了sb2\n");elseprintf("Hello World!\n");endifr

2015-05-05 11:44:40 7047

原创 网络编程Select模型

Select在Socket编程中还是对照主要的,然而对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯性写诸如connect、accept、recv或recvfrom这么的堵塞程序(所谓堵塞方法block,望文生义,即使过程或是线程实行到这些函数时一定期待某个事件的产生,万一事件没有产生,过程或线程就被梗塞,函数不能马上归来)。套接字模式和套接字I/O模型的区别。 套接字模式:

2015-04-27 16:08:15 1587

转载 Socket心跳包机制

心跳包的发送,通常有两种技术方法1:应用层自己实现的心跳包 由应用程序自己发送心跳包来检测连接是否正常,大致的方法是:服务器在一个 Timer事件中定时 向客户端发送一个短小精悍的数据包,然后启动一个低级别的线程,在该线程中不断检测客户端的回应, 如果在一定时间内没有收到客户端的回应,即认为客户端已经掉线;同样,如果客户端在一定时间内没 有收到服务器的心跳包,则认为连接不可用。方法

2015-04-22 11:39:13 1023

原创 多线程编程复习 windows线程函数必须为全局函数或者静态函数

调用CreateThread(...)创建线程时要指定所创建线程的入口函数,此入口函数只能是全局函数或者类的静态成员函数。全局函数很容易理解,但如果是类的成员函数则必须是静态成员函数,为何,因为类的非静态成员函数只能通过类的对象去调用,但是创建线程时从那里能获得类的对象而去调用类的成员函数呢?类的静态成员函数类所有,不专属于类的任何一个对象,所以不创建类的对象也可以调用。全局函

2015-04-19 22:41:48 2819

原创 多线程编程复习笔记 线程的创建

方式一:CreateThreadHANDLE CreateThread(LPSECURITY_ATTRIBUTES lpThreadAttributes,DWORD dwStackSize,LPTHREAD_START_ROUTINE  lpStartAddress, LPVOID lpParameter,DWORD dwCreationFlags,LPDWOR

2015-04-19 21:59:00 737

原创 多线程编程复习笔记 进程与线程

1:什么是多线程?一边听音乐,一边敲代码,一边写博客等等都是多线程的功劳;2:进程的概念进程是指在系统中正在运行的一个应用程序,在传统的操作系统中,是资源的分配单位又是高度运行的单位,在现代操作系统中,进程是资源的分配单位,一个进程通常定义为程序的一个实例。在32为Windows中,进程占据4GB的虚拟地址空间3:进程的组成部分:进程由两个部分组成:a)操作

2015-04-19 21:33:47 654

原创 cannot open file "C:\Program.obj"

出现这个错误的原因:在Configuration Properties -> Linker -> Object/Library里面加库的时候 绝对路径没有加“”例如:C:\Program Files\Microsoft Platform SDK\Lib\DbgHelp.Lib应该改为:"C:\Program Files\Microsoft Platform SDK\Li

2015-04-17 14:05:16 4798 1

转载 如何定义和实现一个类的成员函数为回调函数

如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。通过查询资料发现,其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递this指针给其成员函数从而实现程序函数可以访问C++的数据成员。这也可以理解为什么C++类的多个实例可以共享成员函数却-有不同的数据成员。由于this指针的作用,使得将一个CALL-BACK型的成员函数作为回调

2015-04-14 21:44:25 822

原创 windows网络编程入门

windows Sockets 的版本:头文件:WINSOCK.h库文件:wsock32.lib动态困:WINSOCK.DLL头文件:WINSOCK2.h库文件:WS2_32.lib动态困:WS2_32.DLL服务端:WSADATA wsd; //WSADATA变量 SOCKET sServer; //服务器套接字 SOCKET

2015-04-12 16:27:00 988

转载 同步和异步概念

进程同步用来实现程序并发执行时候的可再现性。一.进程同步及异步的概念1.进程同步:就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。也就是必须一件一件事做,等前一件做完了才能做下一件事.就像早上起床后,先洗涮,然后才能吃饭,不能在洗涮没有完成时,就开始吃饭.按照这个定义,其实绝大多数函数都是同步调用(例如sin,isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那

2015-04-10 09:47:20 485

jsoncpp 写入乱码解决版本

解决乱码问题,jsoncpp 写入乱码解决版本

2018-10-09

停车场管理系统C++

C++ 停车场管理系统 1500行代码 实现了 停车场模拟的国内工程

2018-07-31

图书管理系统

C++ 图书管理系统 C++ 图书管理系统 C++ 图书管理系统

2018-07-16

CTP交易开发十里

ctp开发 期货交易开发 上期所 demo用例 可以登录下单测试

2017-11-20

Socket入门代码

windows网络编程 最基础 socket编程 网络 TCP Udp

2015-04-12

2048游戏C++实现

2048 VS2012 实现 ,简单的逻辑实现,UI界面很丑陋,参考了别人的代码重新做的,注释很详细了!

2015-01-09

MFC记事本开发

记事本开发 ,有详细的代码注释,几乎每一句都注释了

2014-12-29

effective C++ 读书笔记

effective C++ 很好 很不错 最好的C++进阶资料

2014-11-20

android java 学习基础知识

java for android 基础知识 的学习与研究文档

2014-11-03

经典C++讲解 绝对值得看

国嵌C++文档 唐老师经典讲解 绝对值得看 花钱买的贡献出来

2014-10-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除