排序:
默认
按更新时间
按访问量

WebRTC中peerconnection示例工程结构分析

WebRTC Native代码相当的大(大约200Mb),开始的时候对这些代码真的是一头雾水,最后决定先从example中的peerconnection先看起。 peerconnection例子分为client端和server端,多个client加入对话,server负责信令的处理,这里主要讨论...

2018-07-15 09:25:00

阅读数:66

评论数:0

C++11:尽量使用std::array来代替数组

C++11后,标准库引入了更现代化的数组std::array,cppreference.com是这样介绍的: 定义于头文件 <array> template< class T, std:...

2018-05-23 09:38:34

阅读数:1285

评论数:0

C++11中的“万能引用”

首先我们来看一个函数模板的代码: template<typename T> void func(T& param){ } 这里模板函数参数接收一个引用,但是却不能这样调用: func(27); //error: invali...

2018-05-23 09:09:06

阅读数:342

评论数:0

WebRTC简介与代码架构

 简介 WebRTC,中文全称网页即时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。它于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准。 WebRTC除了是...

2018-05-16 11:11:08

阅读数:108

评论数:0

一个简单引用计数智能指针的实现

template <typename T> class SharedPtr{ public: SharedPtr() = delete;//不允许未初始化的智能指针,防止使用空指针 SharedPtr(const SharedPtr&a...

2018-05-06 17:51:02

阅读数:39

评论数:0

C++ throw()关键词:一个被C++标准抛弃的玩意儿

throw()关键词相信大家在很多C++教程或者代码中看到过,这个博客以一Stackoverflow上的问题开始:应该在C++中使用throw()关键词吗? 回答是:不应该 理由主要是各个编译器并没有一个统一的标准去处理这个关键词,还有这个关键词作用很累赘等等,总之是不应该的。 Anyw...

2018-05-06 17:44:13

阅读数:765

评论数:0

《Effective C++》:学习处理模板化基类内的名称

假设有以下需求: 要给N个公司发信息,目前有Alibaba、Microsoft、Amazon三家公司,给Microsoft、Amazon发送明文,给Alibaba发送密文(特殊情况),可以用C++模板技术来实现。 class Alibaba{ public: //给Alibaba发...

2018-05-04 16:44:23

阅读数:25

评论数:0

扩展型归并排序(模板+仿函数)

写了一个类似STL中的sort用法的归并排序,可以以函数形式传入排序规则。 #include #include #include #include using namespace std; template typename T> class MergeSort{ public...

2018-02-07 16:38:32

阅读数:66

评论数:0

多段资源分配问题(动态规划)

多段资源分配问题 题目内容 设有资源n(n为整数),分配给m个项目, gi(x) g_i(x) 为第i个项目分得资源 x x 所得到的利润,求总利润最大的资源分配方案, 也就是解下列问题: max z=g1(x1)+g2(x2)+...+gm(xm) max \ z = ...

2018-01-22 00:44:04

阅读数:1669

评论数:0

N皇后问题(递归+回溯)的C++实现

N皇后问题(递归+回溯) 采用C++仿函数技术实现的N皇后问题: 解决问题类: //多皇后问题 class MultiQueens{ private: vectorint> queen_vec; //保存当前各个皇后的位置 int solve; //保存解的个...

2018-01-08 21:20:32

阅读数:111

评论数:0

C++中的智能指针(1):shared_ptr 的介绍和用法

原理简介C++中采用new和delete来创建(申请)和释放(销毁)内存,但是因为释放内存时机把握不当、忘记释放内存等原因,很难准确及时地管理内存。 因此,C++标准库推出了智能指针机制来更好的管理内存,智能指针能自动释放所指向的对象。shared_ptr简介shared_ptr 允许多个...

2017-12-16 13:50:41

阅读数:303

评论数:0

C++中lambda表达式(匿名函数)的用法

简介之前在看SICP《计算机程序的构造和解释》一书的时候,中用了大量的Scheme语言(一种Lisp语言的方言)来解释书中的函数式程序设计思想(只读到第二章后半部。。。有空再补)。Scheme的一个主要特性是可以像操作数据一样操作函数调用, 例如实现对一个操作生成的数乘以二的函数:;这是一个实现...

2017-12-06 22:47:58

阅读数:153

评论数:0

C++中的委托构造

委托构造,就是构造函数调用其他的构造函数来完成构造过程,其他的构造函数写在成员初始列表中。using namespace std;class base{ private: int a; public: //非委托函数使用相应的实参初始化相应的实参初始化成员 base(int...

2017-11-30 23:11:54

阅读数:89

评论数:0

《UNIX网络编程》中五种I/O方式总结和对比

UNIX提供了五种不同的I/O模型: 阻塞式I/O模型 非阻塞式I/O模型 I/O复用模型 信号驱动式I/O模型 异步I/O模型 阻塞式I/O模型阻塞式I/O模型是最基本的I/O模型。在默认情况下,所有套接字都是阻塞的,以数据报套接字为例:当系统调用recvfrom系统调用函数时,当内核socke...

2017-11-29 13:16:39

阅读数:795

评论数:0

C++ 11:delete关键词和一条《Effective C++》的过时条款

C++ 11:delete关键词和一条《Effective C++》的过时条款

2017-11-24 00:53:34

阅读数:382

评论数:0

C++中const的用法:使代码更加健壮

本文将从三个方面来讨论const带来的代码健壮性:const在变量中的用法,const在函数中的用法,const作为返回值的用法。const在变量中的用法代码示例:int num = 1; const int a = 1; //a的值不能被改变 const int *b = &n...

2017-11-23 21:50:15

阅读数:1585

评论数:0

C++中的Unicode编码:wchar, UTF-8,UTF-16,UTF-32

C++在C11标准中加入了对Unicode编码的支持,新增了wchar_t、char16_t、char32_t内置数据类型。 cout << sizeof(char) << endl; cout << sizeof(wchar_t) <<...

2017-11-14 20:29:34

阅读数:226

评论数:0

LintCode 二叉树的路径和

样例 给定一个二叉树,和 目标值 = 5: 1 / \ 2 4 / \ 2 3 返回: [ [1, 2, 2], [1, 4] ] 解法:DFS,注意路径和的概念,要到叶子节点 AC代码: class Solution { public: ...

2017-11-12 19:17:11

阅读数:133

评论数:0

LintCode 二叉树的最大节点

样例 给出如下一棵二叉树: 1 / \ -5 2 / \ / \ 0 3 -4 -5 返回值为 3 的节点。 URL:http://www.lintcode.com/zh-cn/problem/binar...

2017-11-12 16:43:14

阅读数:100

评论数:0

LintCode 最大子数组(dp)

**> 给定一个整数数组,找到一个具有最大和的子数组,返回其最大和。 样例 给出数组[−2,2,−3,4,−1,2,1,−5,3],符合要求的子数组为[4,−1,2,1],其最大和为6**地址:http://www.lintcode.com/zh-cn/problem/maximum-...

2017-11-05 17:09:41

阅读数:236

评论数:2

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