自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 2018.11.2: C++11中的新特性raw介绍

我们都知道,在经典c++中,如果我们要在一个字符串输出中显示【\n】、【"】等特殊字符,需要使用到转义字符,就像下面的例子中一样:... string s = "在c++中,如果要换行请输入\\n,如果要显示双引号则要输入\\和\",比较麻烦!"; cout << s << endl;...运行后,会显示出字符串【在c++中,如果要换行请输入\n...

2018-11-02 14:58:19 227

原创 2018.8.21:整理服务器配置需要的东西

调试--选项--环境--文档--加载时检查一致额行尾(k)Debug  x64C/C++  一、常规附加包含目录:D:\develop\3rd\boost_1_67_0D:\develop\3rd\wxWidgets-3.1.1\lib\vc_lib\mswudD:\develop\3rd\wxWidgets-3.1.1\includeD:\develop\3rd\json...

2018-08-21 09:27:41 365

原创 2018.8.16学习内容:

一、将GBK形式的test字符串转化为UTF-8形式的字符串std::string s = boost::locale::conv::between(test, "UTF-8", "GBK");二、设置单元格表头的内容SetCellValue(row, col, string);三、顶层窗口类:独立的位于桌面上的类wxFrame  一个可以包含其他窗口,并且大小可变的窗...

2018-08-20 08:38:56 121

原创 2018.8.13学习内容:wxBoxSizer

wxBoxSizer这个布局控件允许我们把多个组件放在一行或者一列上,我们能在一个布局控件中放入另一个布局控件。wxBoxSizer(int orient)wxSIzerItem * Add(wxWindow * window, int proportion = 0, int flag = 0, int border = 0)参数orient可以是wxVERTICAL或者wxHOR...

2018-08-13 17:31:55 733

原创 2018.8.8学习内容:wxwidgets wxNotebook

容器窗口类容器窗口类可以管理其他窗口wxNotebook类:         这个类提供了一个有多个页面的窗口,页面之间可以通过边上的TAB按钮来切换。每个页面通常是一个普通的wxPanel窗口或者其他派生类,也可以使用其他的窗口。NoteBook的TAB按钮可以包含一个图片,也可以包含一个文本标签。图片是有wxImageList提供的,是通过在列表中的位置和页面对应的。使用not...

2018-08-13 08:42:44 1491

原创 2018.8.3 昨日总结:

两个main函数,改一个名字看张工给的GitHub解析JSON字符串就行,GitHub库已经在电脑上下载好了解析过程:第一步:包含头文件#include <nlohmann/json.hpp>using json = nlohmann::json;第二步显示解析:auto  j3 = json :: parse(JSON字符串);j3是JSON库生成的自定...

2018-08-03 11:26:25 196

原创 2018.8.2分析总结:GitHub下的JSON解析

https://github.com/nlohmann/json 全篇介绍代码中:一、添加头文件和名称空间(首先要引入json作用域,json提供了cin,cout的输入输出流的操作符):#include <nlohmann/json.hpp>using json = nlohmann::json;二、将得到的json字符串转换成标准格式:UTF-8(世界通用的语言...

2018-08-02 14:01:27 752

原创 2018.7.26学习内容:搞懂关系

HTTP:超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。1960年美国人Ted Nelson构思了一种通过计算机处理文本信息的方法,并称之为超文本(hypertext),这成为了HTTP超文本传输协议标准架构的发展根基。...

2018-08-01 11:40:17 257

原创 2018.7.31 思考,总结,要完全掌控socket网络编程

1、IP网络中每台主机都有一个唯一的IP地址IP地址是一个逻辑地址因特网上的IP地址具有全球唯一性32位,4个字节,常用点分十进制的格式表示,例如:192.168.0.162、为进行网络中的数据交换(通信)而建立的规则、标准或约定(=语义+语法+规则)不同层具有各自不同的协议3、应用层:超文本传输协议http(上网打开网页)传输层:传输控制协议TCP(三次握...

2018-08-01 11:32:05 178

原创 2018.7.25 学习内容:boost、beast、http

协议入门:HTTP协议定义客户端和服务器角色:客户端发送请求,服务器发回响应。当客户端和服务器建立连接时,客户端发送一系列请求,而服务器按接收请求的顺序发送回每个接收到的请求的至少一个响应。请求或响应是具有两个部分的HTTP消息(以下称为“消息”):具有结构化元数据的头部和保持任意数据的可选可变长度体。序列化标题是一个或多个文本行,其中每一行以回车符结束,后跟换行符("\r\n")。空行标...

2018-07-25 16:36:27 4594

原创 2018.7.25 学习内容:

HTTP客户端使用HTTP向网站发出GET请求并打印响应:#include <boost/beast/core.hpp>#include <boost/beast/http.hpp>#include <boost/beast/version.hpp>#include <boost/asio/connect.hpp>#include ...

2018-07-25 09:40:35 433

原创 2018.7.24 学习内容: TCP面向连接的socket编程

服务器端程序: 1、加载套接字库2、创建套接字(socket)。 3、将套接字绑定到一个本地地址和端口上(bind)。 4、将套接字设为监听模式,准备接收客户请求(listen)。 5、等待客户请求到来;当请求到来后,接受连接请求,返回一个新的对应于此次连接的套接字(accept)。 6、用返回的套接字和客户端进行通信(send/recv)。 7、返回,等待另一客户请求。 8、关...

2018-07-24 16:20:32 208

原创 2018.7.24 学习内容: JSON格式

JSON:JavaScript 对象表示法(JavaScript Object Notation),是一种轻量级的数据交换格式。可以理解为是一种跨语言的文本格式(即与具体语言无关),方便数据传输与协作,易于人阅读和编写,同时也易于机器解析和生成。JSON:是存储和交换文本信息的语法,类似 XML,但比 XML 更小、更快,更易解析。JSON 语法规则JSON 语法是 JavaScrip...

2018-07-24 11:26:14 142

原创 2018.7.28 复习内容:share_ptr,类模板,函数模板,函数指针

share_ptr智能指针:指向类型为XX的对象(指针名)#include<memory>引用计数智能指针,程序要使用多个指向同一对象的指针,用share_ptr。两种使用形式:1、使用new:     shared_ptr<类型>   指针名( new  类型());2、使用make_shared:   share_pt<类型>  指针名 ...

2018-07-23 15:45:37 147

原创 2018.7.23 复习内容:lambda,function,bind,sort函数

lambda函数: 格式:  [ 捕捉列表 ] (参数列表)  修饰符 ->返回类型{ 函数体 }              参数列表,修饰符,返回类型都是可选部分              捕捉列表和函数体都可能为空最简单的lambda函数:  [ ]{ };通长用:  auto  函数名 = lambda函数;参数用: 函数名();function函数:格...

2018-07-23 15:14:03 137

原创 20.18.7.23 复习内容,简单描述线程

复习内容:#include<windows.h>#include<thread>std::thread  这是一个类,表示一个线程,初始化给出的可调用的对象,也就是初始化能执行的函数。1、函数无参数时,格式为:     thread  线程名(执行函数);2、函数有参数时,格式为:     thread  线程名(执行函数,实参列表);detach函...

2018-07-23 14:48:41 104

转载 2018.7.16学习内容:C++11 新的计时方法——chrono 大法好

C++11 新的计时方法——std::chrono 大法好2015年12月16日 19:33:06阅读数:19185计时有很多用途,比如:测试某一段代码的运行时间,时间越短,则性能相对越高。计时有很多方法,我将首先给出我以前常用的一种计时方法,然后给出我认为的最佳方法(采用了C++11的标准技术)。首先给出我以前常用的一种“传统”的计时方法:#include <ctime>using...

2018-07-16 11:32:14 157

转载 2018.7.13学习内容:并行编程

<condition_variable >头文件主要包含有类和函数相关的条件变量。包括相关类 std::condition_variable和 std::condition_variable_any,还有枚举类型std::cv_status。另外还包含函数 std::notify_all_at_thread_exit(),以下分别介绍一下以上几种类型。std::condition_va...

2018-07-13 17:00:51 111

原创 2018.7.13学习内容:函数适配器function,包装函数

C++11 std::function 是一种通用、多态的函数封装,它的实例可以对任何可以调用的目标实体进行存储、复制和调用操作,它也是对 C++中现有的可调用实体的一种类型安全的包裹(相对来说,函数指针的调用不是类型安全的),换句话说,就是函数的容器。当我们有了函数的容器之后便能够更加方便的将函数、函数指针作为对象进行处理。例如:#include <functional>#inclu...

2018-07-13 13:59:50 149

原创 2018.7.11学习内容:lambda函数详解

Lambda 函数与表达式Lambda函数的语法定义如下:[capture](parameters) mutable -> return_type{statement}其中:[capture]:捕捉列表。捕捉列表总是出现在 lambda 表达式的开始处。事实上,[] 是 lambda 引出符。编译器根据该引出符判断接下来的代码是否是 lambda 函数。捕捉列表能够捕捉上下文中的变量供 la...

2018-07-11 11:18:33 211

转载 2018.7.11学习内容: c++中 this指针详解

this 是 c++中的一个关键字,也是一个常量指针,指向当前对象,也就是当前对象的首地址。通过this指针,可以访问当前对象的成员变量和成员函数。【特性】1.  this指针的类型是 类类型* const2.  this指针并不是对象本身的一部分,不会影响sizeof的结果3.  this的作用域在类成员函数的内部4.  this指针是类成员函数的第一个默认隐含参数,编译器自动维护传递5.  只...

2018-07-11 09:42:09 155

原创 2018.7.11学习内容:new和delete的简单运用

new int;     //开辟一个存放整数的存储空间,返回一个指向该存储空间的地址(即指针)   new int(100);     //开辟一个存放整数的空间,并指定该整数的初值为100,返回一个指向该存储空间的地址   new char[10];    //开辟一个存放字符数组(包括10个元素)的空间,返回首元素的地址   new int[5][4];    //开辟一个存放二维整型数组(...

2018-07-11 09:29:20 90

转载 2018.7.10学习内容:C++ 类模板与模板类详解

在C++的Template中很多地方都用到了typename与class这两个关键字,有时候这两者可以替换,那么这两个关键字是否完全一样呢?  事实上class用于定义类,在模板引入c++后,最初定义模板的方法为:template<class T>,这里class关键字表明T是一个类型,后来为了避免class在这两个地方的使用可能给人带来混淆,所以引入了typename这个关键字,它的...

2018-07-10 18:56:58 103

原创 2018.7.10学习内容:VS2017下的wxWidgets建立一个简单的窗口

第一步,创建一个空项目点击新建项会出现下图:之后出现:第二步,配置:1、出现下图,添加头文件:C/C++→常规→附加包含目录(添加头文件在硬盘中的位置)2、添加库文件:链接器→常规→附加库目录(添加库文件在硬盘中的位置)3、引用库文件:链接器→输入→附加依赖项→添加lib文件4、链接器→系统→子系统→窗口...

2018-07-10 11:13:42 1627

转载 2018.7.9学习内容:使用wxWidgets进行跨平台的C++开发

本文阐述了wxWidgets的由来,以及从wxWidgets的特点出发,说明了选择wxWidgets给我们带来的好处,并且通过一个典型的例子讨论了如何在C++中使用wxWidgets开发跨平台的软件。什么是wxWidgets?wxWidgets是一个跨平台的软件开发包。它诞生于1992年,最初的名子是wxWindows,但由于Microsoft的抗议,在2004年改名为wxWidgets。它最初是...

2018-07-09 17:11:04 228

转载 2018.7.9学习内容:C++多态

最近复习到了C++的多态性,我想把多态性的一些知识点进行下梳理总结。本文所有代码均在windows10的VS2013平台上测试什么是多态?多态性(polymorphism)据说最早源自希腊语,从字面上理解就是多种形态,多种形式。具体到C++这种面向对象(OOP)的语言中,其实就是“一种接口,多种实现(方法)”。 多态可分为静态多态和动态多态,具体的分类情况如下:静态多态和动态多态的区别其实只是在什...

2018-07-09 15:08:12 107

转载 2018.7.5学习内容:C++类构造函数初始化列表

构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如:class CExample {public:    int a;    float b;    //构造函数初始化列表    CExample(): a(0),b(8.8)    {}    //构造函数内部赋值    CExample()    {        a=0;    ...

2018-07-05 18:49:45 92

转载 2018.7.5 学习内容:bind函数

1、基本概念bind函数定义在头文件 functional 中。可以将 bind 函数看作一个通用的函数适配器,它接受一个可调用对象,生成一个新的可调用对象来“适应”原对象的参数列表。——《C++Primer  5th》2、bind的参数#include <iostream>#include <functional> using namespace std;using na...

2018-07-05 17:44:42 166

转载 2018.7.4 学习内容: 【C++11新特性】 C++11智能指针之shared_ptr

C++中的智能指针首先出现在“准”标准库boost中。随着使用的人越来越多,为了让开发人员更方便、更安全的使用动态内存,C++11也引入了智能指针来管理动态对象。在新标准中,主要提供了shared_ptr、unique_ptr、weak_ptr三种不同类型的智能指针。接下来的几篇文章,我们就来总结一下这些智能指针的使用。今天,我们先来看看shared_ptr智能指针。shared_ptrshare...

2018-07-04 16:27:25 115

空空如也

空空如也

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

TA关注的人

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