自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

转载 C# GroupBy

我们知道GroupBy出来的东西是个泛型的东西,签名是IEnumerable,这个TSource类型是没问题,我没有对Source做修改,就是data本身的类型。今天在公司做一个需求的时候,写的是面条代码,一个方法直接从头写到尾,其中用到了GroupBy,且GroupBy的KeySelector是多个属性而不是单个属性。重构以后这个groups是要作为参数进入到别的方法中的,方法签名显然是不能用var做类型推导,必须指定确定的类型。

2022-11-09 15:00:16 3264

转载 stdarg.h 让函数能够接收不定量参数

stdarg.h数据类型 类型名称 描述 相容 va_list 用来保存宏va_arg与宏va_end所需信息 C89 stdarg.h宏 巨集名称 描述 相容 va_start 使va_list指向起始的参数 C89 va_arg

2021-11-04 10:50:39 150

原创 C++ 自己实现string的Split

vector<string> split(const string& src, string separate_character) //20211101{ vector<string> strs; int separate_characterLen = separate_character.size();//分割字符串的长度,这样就可以支持如“,,”多字符串的分隔符 int lastPosition = 0, index = -1; ...

2021-11-01 14:18:34 179

原创 计算文件长度 文件大小超过4G

#include "stdafx.h"#include #include using namespace std;int _tmain(int argc, _TCHAR* argv[]){FILE * readfp;string RawDataFileAddress  = "F:\\CTRawdataFile\\20170822\\d1ffe726-e9

2017-08-23 09:22:52 1212

转载 C++ 生成GUID

#include #include  //--生成GUIDconst char* newGUID(){    static char buf[64] = {0};    GUID guid;    if (S_OK == ::CoCreateGuid(&guid))    {        _snprintf(buf, sizeof(buf)     

2017-08-19 13:56:36 803

转载 csv导入mysql提示错误[Error Code] 1290 - The MySQL server is running with the --secure-file-priv option 解决方

csv导入mysql提示错误[Error Code] 1290 - The MySQL server is running with the --secure-file-priv option解决方法:  1.进入mysql查看secure_file_prive的值  mysql>SHOW VARIABLES LIKE "secure_file_priv";

2017-08-09 10:16:46 2052

转载 C++实现文件夹复制

标签: C++2016-10-05 15:27 1396人阅读 评论(1) 收藏 举报 分类:c++(10) 版权声明:本文为博主原创文章,未经博主允许不得转载。语言:C++环境:Windows10 x64 visual sudio 2013               Linux Ubuntu16.04 gcc说明:封装了一

2017-05-06 14:08:33 1308

转载 find_first_of()和 find_last_of() 【获取路径、文件名】

11-06-11 12:44:46)转载▼标签: 杂谈分类: cstring 类提供字符串处理函数,利用这些函数,程序员可以在字符串内查找字符,提取连续字符序列(称为子串),以及在字符串中删除和添加。我们将介绍一些主要函数。1.函数find_first_of()和 find_last_of() 执行简单的模式匹

2017-05-02 09:48:45 471

转载 C/C++ 判断文件夹是否存在以及创建、删除文件夹 windows以及linux通用

标签: windowslinux2016-02-18 20:49 4328人阅读 评论(0)收藏举报分类: c++(39) 版权声明:本文为博主原创文章,未经博主允许不得转载。参考:http://blog.csdn.net/tigerjibo/article/details/11712039http://baike

2017-03-17 18:25:03 573

转载 mmap 文件映射内存详解

mmap 文件映射内存详解2016-01-20 11:56:28分类: C/C++原文出自:http://blog.csdn.net/joejames/article/details/37958017一直都对内存映射文件这个概念很模糊,不知道它和虚拟内存有什么区别,而且映射这个词也很让人迷茫,今天终于搞清楚了。。。下面,我先解释一下我对映射这个词的理解,再区分一下几个容

2017-03-17 16:59:03 1358 1

转载 C/C++ 中判断某一文件或目录是否存在

方法一:C++中比较简单的一种办法(使用文件流打开文件)复制代码 1 #include 2 #include 3 4 using namespace std; 5 6 #define FILENAME "*.dat" // 指定文件名 7 8 int main( void ) 9 {10 fstream _file;11 _file.open(FILENAME, ios::in);12 if(!_

2017-03-10 09:44:57 568

转载 [原创]标准I/O(buffered I/O)浅析

分类: C/C++这里为了说明标准I/O的工作原理,借用了glibc中标准I/O实现的细节,所以代码多是不可移植的.1. buffered I/O, 即标准I/O首先,要明确,unbuffered I/O只是相对于buffered I/O,即标准I/O来说的.而不是说unbuffered I/O读写磁盘时不用缓冲.实际上,内核是存在高速缓冲区来进行真正的磁盘

2017-03-09 10:14:32 463

转载 C++中参数传递方式讨论

2013-08-05 23:01 1302人阅读 评论(0) 收藏 举报 分类:【C++基础】(29) 众所周知,在C++中调用函数时有三种参数传递方式: (1)传值调用; (2)传址调用(传指针); (3)引用传递; 实际上,还有一种参数传递方式,就是全局变量传递方式。这里的“全局”变量并不见得就是真正的全局的,所有代码都可以直接访问的,只

2017-03-04 14:41:46 220

转载 C++中回调函数(CallBack)的使用

标签: C++callback回调2013-09-17 12:58 5740人阅读 评论(1) 收藏 举报 分类:【C++基础】(29) 如果试图直接使用C++的成员函数作为回调函数将发生错误,甚至编译就不能通过。其错误是普通的C++成员函数都隐含了一个传递函数作为参数,亦即“this”指针,C++通过传递this指针给其成员函数从而实现程序函数可以

2017-03-04 10:47:41 1922

转载 C++ 中string.find() 函数的用法总结

2015-05-15 16:17 1990人阅读 评论(1) 收藏 举报 分类:C++开发(293) C++ 中string.find() 函数的用法总结(转载) #include #include using namespace std;void main(){[cpp] view plaincopy

2017-03-02 14:37:03 350

转载 string替换所有指定字符串(C++)

C++的string提供了replace方法来实现字符串的替换,但是对于将字符串中某个字符串全部替换这个功能,string并没有实现,我们今天来做的就是这件事。首先明白一个概念,即string替换所有字符串,将"12212"这个字符串的所有"12"都替换成"21",结果是什么?可以是22211,也可以是21221,有时候应用的场景不同,就会希望得到不同的结果,所以这两种答案都做了实

2017-03-02 14:23:21 485

转载 Protocol Buffer技术详解(C++实例)

这篇Blog仍然是以Google的官方文档为主线,代码实例则完全取自于我们正在开发的一个Demo项目,通过前一段时间的尝试,感觉这种结合的方式比较有利于培训和内部的技术交流。还是那句话,没有最好的,只有最适合的。我想写Blog也是这一道理吧,不同的技术主题可能需要采用不同的风格。好了,还是让我们尽早切入主题吧。          一、生成目标语言代码。      下面的命令帮助我们将M

2017-03-01 20:28:40 219

转载 浅谈C++中内存分配、函数调用和返回值问题

在谈述函数调用和返回值问题之前,先来看看C++中内存分配的问题。C++编译器将计算机内存分为代码区和数据区,很显然,代码区就是存放程序代码,而数据区则是存放程序编译和执行过程出现的变量和常量。数据区又分为静态数据区、动态数据区,动态数据区包括堆区和栈区。以下是各个区的作用:(1)代码区:存放程序代码;(2)数据区   a.静态数据区: 在编译器进行编译的时候

2017-02-25 15:31:59 445

转载 CreateThread创建线程传递结构体参数

CreateThread创建线程传递结构体参数分类:visual c++ (13111)  (2)  举报  收藏 一般mfc创建线程的函数用的最多的有两个:AfxBeginThread和CreateThread。首先来学习CreateThread。        CreateThread线程函数及参数如下:        HANDLE

2017-02-16 15:11:37 5094

转载 Google Protocol Buffers 快速入门(带生成C#源码的方法)

Google Protocol Buffers是google出品的一个协议生成工具,特点就是跨平台,效率高,速度快,对我们自己的程序定义和使用私有协议很有帮助。Protocol Buffers入门:1、去 http://code.google.com/p/protobuf/downloads/list 下载一个源代码包和一个已编译好的二进制包2、找一个Proto示例代码,使用命令

2017-02-10 10:59:10 1882

转载 C++:用CreateDirectory创建文件目录

(2014-01-03 11:42:34)转载▼标签: createdirectory 创建文件目录 c:分类: 学习之路    CreateDirectory这个函数的作用是创建一个新的目录。如果底层文件系统支持文件和目录上的安全描述,该功能可将指定的安全描述到新的目录。函数原型:

2017-02-09 17:58:11 556

转载 C/C++如何创建文件夹

2008-07-28 10:36:25|  分类: 抄抄摘摘|举报|字号 订阅      下载LOFTER我的照片书  |转自:http://zhidao.baidu.com/question/11281137.html?si=3通过system();

2017-02-09 16:18:47 1088

转载 网络-数据序列化之protobuf

标签: 网络开发2015-07-01 15:44 678人阅读 评论(0) 收藏 举报 分类:C/C++-网络-数据序列化版权声明:本文为博主原创文章,未经博主允许不得转载。很多时候需要将一些数据打包,就是把这些数据搞在一起,方便处理。最常见的情况就是把需要传输的数据,当然数据不止一条,打包成一个消息,然后发送出去,接收端再以一定的规则接收并

2017-02-06 16:23:28 445

转载 Google 开源序列化框架protobuf

1.  Protobuf简介       protobuf是google提供的一个开源序列化框架,类似于XML,JSON这样的数据表示语言,其最大的特点是基于二进制,因此比传统的XML 表示高效短小得多。虽然是二进制数据格式,但并没有因此变得复杂,开发人员通过按照一定的语法定义结构化的消息格式,然后送给命令行工具,工具将自动生成相关的类,可以支持php、java、c++、python等

2017-02-06 11:01:14 1921

原创 google protobuf 使用和原理

一.什么是protobufprotobuf全称Google Protocol Buffers,是google开发的的一套用于数据存储,网络通信时用于协议编解码的工具库。它和XML或者JSON差不多,也就是把某种数据结构的信息,以某种格式(XML,JSON)保存起来,protobuf与XML和JSON不同在于,protobuf是基于二进制的。主要用于数据存储、传输协议格式等场合。那既然有了X

2017-01-24 14:31:25 782

原创 Google protobuf :windows下环境配置

Windows下google protobuf开发环境配置最近项目需求,Client与Server的网络通信协议传输使用google protobuf rpc。对于Protobuf,以前是只知道有这个东西,知道它干嘛,而且一直很仰慕,但是从来没学习过,最近刚好趁着项目机会,好好学习学习。这篇主要讲,在windows下用vs2012配置google protobuf开发环境。

2017-01-24 14:25:42 2933

转载 【通信框架】Google的开源通信框架protobuf概述

一、作用      protobuf(Protocol Buffers)是Google内部使用的一个项目,后来贡献给开源社区为大家使用。它要做的事情和xml类似,就是要把某种数据结构的信息有某种格式保存起来,主要用于数据存储、传输协议格式等场合。二、优点     和xml有着类似的功能,那么肯定有一些更加优势的地方。     1、时间开销         

2017-01-23 18:35:05 951

转载 线程的状态及线程结束时候资源的回收

线程的状态及线程结束时候资源的回收         一句话总结:线程创建的时候默认处于joinable状态,此状态线程结束的时候不会自动回收线程资源,需要pthread_join函数来回收;pthread_detach可以讲线程转换为detached状态,子线程运行完成之后可以自行回收资源。

2017-01-10 18:03:15 3339

转载 彻底搞清楚 C/C++ 中日期和时间 time_t 与 struct tm,time(NULL),ctime;strftime

彻底搞清楚 C/C++ 中日期和时间 time_t 与 struct tm,time(NULL),ctime;strftime本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。关键字:UTC(

2017-01-03 17:45:55 428

转载 C++设计模式——单例模式

C++设计模式——单例模式问题描述现在,不管开发一个多大的系统(至少我现在的部门是这样的),都会带一个日志功能;在实际开发过程中,会专门有一个日志模块,负责写日志,由于在系统的任何地方,我们都有可能要调用日志模块中的函数,进行写日志。那么,如何构造一个日志模块的实例呢?难道,每次new一个日志模块实例,写完日志,再delete,不要告诉我你是这么干的。在C++中,可以构造一个日

2017-01-03 17:07:24 484

转载 高性能IO模型浅析

2014-11-14 23:39 by Florian, 33919 阅读, 35 评论, 收藏, 编辑高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种:(1)同步阻塞IO(Blocking IO):即传统的IO模型。(2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求

2017-01-03 13:51:48 273

转载 数据结构 B+树c代码实现

数据结构 B+树c代码实现标签: 数据结构c语言2016-02-23 10:16 95人阅读 评论(0) 收藏 举报目录(?)[+]BTreeNode.h templatetypename Type> class BTree; templatetypename Type> class BTreeNode{public:    

2016-12-30 17:38:56 1098

转载 从B树、B+树、B*树谈到R 树

从B 树、B+ 树、B* 树谈到R 树 作者:July、weedge、Frankie。编程艺术室出品。说明:本文从B树开始谈起,然后论述B+树、B*树,最后谈到R 树。其中B树、B+树及B*树部分由weedge完成,R 树部分由Frankie完成,全文最终由July统稿修订完成。出处:http://blog.csdn.net/v_JULY_v 。 第一节、B树、B+树、B*

2016-12-30 17:12:51 258

转载 为什么文件存储要选用B+树这样的数据结构?

发表评论 (1)查看评论“文件存储要选用B+树这样的数据结构”——没记错的话,这是严蔚敏那本数据结构书上的一句结论。不知道是我没细看还是她没细讲,反正当时纯粹应试地记了这么个结论。不求甚解终究不是一个好的学习态度,一直以来我都没有细想过这个事情,直到看到了这篇博文http://blog.csdn.net/v_JULY_v/article/details/6530142。

2016-12-30 16:41:44 593

转载 C++Event机制的简单实现

C++ Event Model一 事件模型  对发生的事件作出的响应——事件模型。1 事件:  在面向对象中,就是对象的属性或者状态发生了变化,操作或者接收到了某些动作时,向外发出了这种变化或者动作对应的通知。       2 事件模型包括的元素:        3 事件模型过程:    二

2016-12-29 10:58:10 1882

原创 char * string CString之间的转化

1、string 转 CStringCString.format("%s", string.c_str());2、char * 转 CStringCString.format("%s", char*);3、char * 转 stringstring s(char *);4、string 转 char *char *p = string.c_s

2016-12-28 13:19:24 212

转载 CString、string、char*之间的区别和转换

一、区别CString和string均是字符串模板类。CString为Visual C++中最常用的字符串类,主要应用在MFC和ATL编程中,安全性最高,但可移植性最差。string为标准模板类(STL)定义的字符串类,已经纳入C++标准之中,使用STL时必不可少的类型,所以是做工程时必须熟练掌握的。char*为C编程中最常用的字符串指针,一般以'\0'为结束标志。string

2016-12-26 17:47:03 446

转载 SQL Date 函数

SQL ViewSQL NullsSQL 日期当我们处理日期时,最难的任务恐怕是确保所插入的日期的格式,与数据库中日期列的格式相匹配。只要数据包含的只是日期部分,运行查询就不会出问题。但是,如果涉及时间,情况就有点复杂了。在讨论日期查询的复杂性之前,我们先来看看最重要的内建日期处理函数。MySQL Date 函数下面的表格列出

2016-12-26 17:41:50 232

转载 在MYSQL中插入当前时间,就象SQLSERVER的GETDATE()一样。(见内)_PHP教程

mysql|server|sqlserver|插入NOW()函数以`'YYYY-MM-DD HH:MM:SS'返回当前的日期时间,可以直接存到DATETIME字段中。    CURDATE()以’YYYY-MM-DD’的格式返回今天的日期,可以直接存到DATE字段中。    CURTIME()以’HH:MM:SS’的格式返回当前的时间,可以直接存到TIME字段中。

2016-12-26 17:38:35 6495

转载 C++获取系统时间如何插入到MySQL里面的datetime型属性中

用c++获取系统的时间后,发现时间的格式是int型,并且我们需要的格式是类似2015-07-24 15:55:03这种类型的格式,为此将这些int型的年月日时分秒转换为string,而MySQL中datetime型的格式为'2015-07-24 15:55:03',那么问题来了:怎么将"2015-07-24 15:55:03"转换成'2015-07-24 15:55:03',从而sql语句能够

2016-12-26 17:32:52 3379

空空如也

空空如也

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

TA关注的人

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