C++ Server端
使用C++/java建立服务端,为客户端(移动端及前端)提供网络接口。老骥伏枥,志在千里。
qianlima210210
这个作者很懒,什么都没留下…
展开
-
c++之web框架cppcms安装配置和c++之CppDB安装配置
去cppcms的官网(https://sourceforge.net/projects/cppcms/files/cppcms/)下载适合自己的版本;$ wget https://jaist.dl.sourceforge.net/project/cppcms/cppcms/1.2.1/cppcms-1.2.1.tar.bz2$ tarxfcppcms-1.2.1.tar.bz2$ ...原创 2020-03-24 21:58:27 · 1343 阅读 · 1 评论 -
c++之std::function
#include <functional>#include <iostream>/* 这是c++11新添加的,使用时需要引入头文件#include <functional> std::function类模板是一个通用的多态函数封装器。 std::function对象可以存储、拷贝、调用任何可以调用的对象函数、lambda表达式、绑定表达式、...原创 2020-03-19 13:57:26 · 1212 阅读 · 0 评论 -
Mac下ProtocolBuffer运行环境配置及编译测试
1、安装辅助工具sudo apt-get install autoconf automake libtool curl make g++ unzip2、wget https://github.com/protocolbuffers/protobuf/releases/download/v3.10.0/protobuf-all-3.10.0.zip3、uzip -o -d ./ pro...原创 2020-03-15 23:47:21 · 999 阅读 · 0 评论 -
boost::property_tree::ptree对象和json字符串之间互转
#include <iostream>#include <string>#include <sstream>#include <boost/property_tree/ptree.hpp>#include <boost/property_tree/json_parser.hpp>#include <boost/fore...原创 2020-03-13 20:49:09 · 4095 阅读 · 0 评论 -
boost::asio TCP socket聊天室扩展(消息对象从json对象获取信息及将消息对象转成json对象)
#ifndef CHAT_MESSAGE_HPP#define CHAT_MESSAGE_HPP#include <cstdio>#include <cstdlib>#include <cstring>#include <iostream>#include <cassert>#include "structHeade...原创 2020-03-12 22:46:40 · 852 阅读 · 0 评论 -
boost::asio TCP socket聊天室扩展(对消息对象进行序列化和反序列化)
#ifndef CHAT_MESSAGE_HPP#define CHAT_MESSAGE_HPP#include <cstdio>#include <cstdlib>#include <cstring>#include <iostream>#include <cassert>#include "structHead...原创 2020-03-12 15:30:25 · 792 阅读 · 0 评论 -
boost::asio TCP socket聊天室扩展(通过POD(Plain old data structure)结构体,以内存的字节流作为传递信息)
//// structHeader.hpp// ServerOfChat//// Created by ma qianli on 2020/3/11.// Copyright © 2020 qianli. All rights reserved.//#ifndef structHeader_hpp#define structHeader_hpp#include &l...原创 2020-03-12 15:22:55 · 729 阅读 · 0 评论 -
boost::asio TCP socket聊天室
//下面是消息的头文件#ifndef chat_message_hpp #define chat_message_hpp ...原创 2020-03-09 23:36:52 · 1037 阅读 · 0 评论 -
C++智能指针之shared_ptr、unique_ptr、weak_ptr
#include <iostream>#include <vector>#include <memory>using namespace std;/* shared_ptr允许多个指针指向同一个对象,unique_ptr则“独占”所指向的对象。 标准库还定义了一种名为weak_ptr的伴随类,它是一种弱引用,指向shared_ptr所管理的对象...原创 2020-02-19 11:30:23 · 686 阅读 · 0 评论 -
搭建Mac下用VSCode编写C/C++程序的环境
前言:为Linux开发C/C++程序,如果直接在Linux下直接编写代码,使用vim、g++等指令,太令人痛苦,需要找个可视化IDE,所以找到了VSCode。正文:由于VSCode工具最终也是调用g++、clang++编译器,所以安装VSCode前,先检查下自己机器上又没有这两个编译器。可以通过下面指令分别检查是否安装:g++ --versionclang++ --versione...原创 2020-02-16 22:59:12 · 7593 阅读 · 4 评论 -
C++线程:thread
一、相关概念通过创建thread对象来管理多线程程序并行条件:多核处理器并行种类:1、多线程并行;需要注意线程间同步2、多进程并行;需要注意进程间通信并发:一段时间内,一起执行,条件:任务多于cpu数量并行:某个时间点,一起执行,条件:任务小于等于cpu数量所以单核cpu只存在并发,不存在并行。二、创建线程(创建完后,线程立即从传入函数开始运行)默认构造函数创建一个空...原创 2020-02-13 15:42:24 · 899 阅读 · 0 评论 -
C++ 11中的Lambda表达式
1. 概述C++ 11 中的 Lambda 表达式用于定义匿名类(anonymous class)、创建匿名类对象,以简化编程工作。编译器为该类添加操作符重载函数void operator()(arguments list),函数体为大括号中的内容。Lambda的语法形式如下:[匿名类实例成员变量初始化列表](操作符重载函数参数列表) mutable 或 noexcept 声明 ->...原创 2020-02-08 23:05:17 · 3173 阅读 · 0 评论 -
C++string获取含有中文字符的字符串长度
c++中的string对象的size()和length(),返回的都是字节个数,如何获取字符个数呢?(尤其是字符串里面包含了中文),如下:#include <iostream>using namespace std;//获取utf-8字符个数(utf-8下,英文字符一个站位一个字节,中文字符一个站位3个字节)static int getUtf8LetterNumber(c...原创 2019-11-08 09:50:24 · 9602 阅读 · 0 评论