C++
文章平均质量分 66
TuxedoLinux
这个作者很懒,什么都没留下…
展开
-
线程函数为静态函数
线程函数转载 2023-01-09 15:04:15 · 547 阅读 · 0 评论 -
c++ 重载 覆盖 隐藏
c++转载 2023-01-09 13:53:37 · 545 阅读 · 0 评论 -
主机字节序
udp转载 2023-01-09 11:42:21 · 87 阅读 · 0 评论 -
tcp udp 的粘包 断包分析
udp转载 2023-01-09 11:22:57 · 325 阅读 · 0 评论 -
c++ const
c++ const转载 2023-01-09 10:02:10 · 82 阅读 · 0 评论 -
c++ function bind
ostream & print(ostream &os, const string& s, char c){ os << s << c; return os;}int main(){ vector<string> words{"helo", "world", "this", "is", "C++11"}; ostringstream os; char c = ' '; for_each(w.原创 2021-06-27 11:57:33 · 175 阅读 · 0 评论 -
C++ 11 创建和使用 unique_ptr
C++ 11 创建和使用 unique_ptrhttps://www.cnblogs.com/DswCnblog/p/5628087.htmlunique_ptr不共享它的指针。它无法复制到其他unique_ptr,无法通过值传递到函数,也无法用于需要副本的任何标准模板库 (STL) 算法。只能移动unique_ptr。这意味着,内存资源所有权将转移到另一unique_ptr,并且原...转载 2019-03-07 16:15:26 · 205 阅读 · 0 评论 -
C++模板template用法总结
C++模板template用法总结https://www.jdon.com/blockchain.html 引言模板(Template)指C++程序设计设计语言中采用类型作为参数的程序设计,支持通用程序设计。C++ 的标准库提供许多有用的函数大多结合了模板的观念,如STL以及IO Stream。 函数模板在c++入门中,很多人会接触swap(int&, int&a...翻译 2019-01-09 00:03:01 · 397 阅读 · 0 评论 -
C++11的初始化列表
nullptr 与 constexprnullptr nullptr出现的目的自然是替换NULL的低位。C++可能会将NULL、0视为同一种东西。这取决于编译器是如何定义的,有的编译器定义NULL为 ( (void * )0) ,有的直接定义为0,这样的化在程序中可能会出现意想不到的错误,例如它会破坏函数的重载功能,考虑下面的重载函数void function(char *p);...转载 2019-01-19 18:10:55 · 1013 阅读 · 0 评论 -
std::function
std::function参考资料• cplusplus.com:http://www.cplusplus.com/reference/functional/function/• cppreference.com:http://en.cppreference.com/w/cpp/utility/functional/functionstd::function简介• 类模板声明...转载 2019-01-19 20:25:38 · 184 阅读 · 0 评论 -
make_pair
转载 2019-01-15 16:51:39 · 514 阅读 · 0 评论 -
c++智能指针详解
c++智能指针详解动态内存https://www.cnblogs.com/invisible2/category/926194.html 每个程序有一个内存池,称为堆,用于存储动态分配的对象,即那些在程序运行时分配的对象。动态对象的生存周期由程序来控制,也就是说,当动态对象不再使用时,我们的代码必须显示的销毁他们。 使用懂态内存是十分必要的额,但众所周知,正确管理动态内存是十分...转载 2019-01-10 01:08:52 · 346 阅读 · 0 评论 -
C++
pair是一个模板数据类型,其中包含两个数据值,两个数据值可以不同如 pair<int,string>a(2,"fgh");则a是一个pair类型,它包括两个数据,第一个数据是int型2,第二个数据是string型"fgh"。 由于pair类型的使用比较繁琐,因为如果要定义多个形同的pair类型的时候,可以时候typedef简化声明:typedef pair&...转载 2019-01-19 12:47:54 · 285 阅读 · 0 评论 -
boost-同步-条件变量
boost-同步-条件变量 namespace boost{ enum class cv_status; { no_timeout, timeout }; class condition_variable; class condition_variable_any; void notify_all_at_thread_exit(conditi...转载 2019-01-24 01:08:42 · 340 阅读 · 0 评论 -
《探索C++多线程》:condition_variable源码(一)
《探索C++多线程》:condition_variable源码(一)。 https://blog.csdn.net/hujingshuang/article/details/70596630 现在接着学习关于多线程编程的特征,在这一节,将会了解到多线程中的condition_variable(条件变量)的相关知识。 在头文件<condition_var...转载 2019-01-24 01:05:38 · 403 阅读 · 0 评论 -
C++常见笔试面试要点以及常见问题
C++常见笔试面试要点以及常见问题https://www.cnblogs.com/jiayayao/p/6246468.html1. C++常见笔试面试要点: C++语言相关:(1) 虚函数(多态)的内部实现(C++虚函数实现多态原理(转载))(2) 智能指针用过哪些?shared_ptr和unique_ptr用的时候需要注意什么?shared_ptr的实现原理是什么? (智...转载 2019-01-24 00:22:28 · 260 阅读 · 0 评论 -
C++/C++11中std::set用法汇总
C++/C++11中std::set用法汇总 https://blog.csdn.net/fengbingchun/article/details/63268962http://www.aichengxu.com/cyvyan/348.htm一个容器就是一些特定类型对象的集合。顺序容器(sequential container)为程序员提供了控制元素存储和访问顺序的能力。这种顺序不依赖...转载 2019-01-08 10:09:25 · 1126 阅读 · 0 评论 -
C++中std::allocator的使用
C++中std::allocator的使用 https://blog.csdn.net/fengbingchun/article/details/78943527标准库中包含一个名为allocator的类,允许我们将分配和初始化分离。使用allocator通常会提供更好的性能和更灵活的内存管理能力。 new有一些灵活性上的局限,其中一方面表现在它将内存分配和对象构造组合在...转载 2019-01-08 10:02:24 · 1687 阅读 · 0 评论 -
TraceTool 跟踪工具的瑞士军刀(C++版使用)
TraceTool 跟踪工具的瑞士军刀(C++版使用)。 https://blog.csdn.net/akof1314/article/details/7065067 TraceTool查看器可以显示多种类型的来源(从提供的框架、日志文件、事件日志、或者OutputDebugString方法)。一个简单而强大的客户端框架发送简单的跟踪,分组跟踪,类和对象浏览器,转储,调用堆栈...转载 2019-01-08 09:57:35 · 213 阅读 · 0 评论 -
C++类的特性相关题目
C++类的特性相关题目 https://blog.csdn.net/akof1314/article/details/75200341.01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 ...转载 2019-01-08 09:54:46 · 202 阅读 · 0 评论 -
C++ 异常处理
C++ 异常处理http://www.runoob.com/cplusplus/cpp-exceptions-handling.html异常是程序在执行期间产生的问题。C++ 异常是指在程序运行时发生的特殊情况,比如尝试除以零的操作。异常提供了一种转移程序控制权的方式。C++ 异常处理涉及到三个关键字:try、catch、throw。throw: 当问题出现时,程序会抛出一个异常。...转载 2019-01-12 14:29:40 · 171 阅读 · 0 评论 -
Allocator
)Allocator In C++ computer programming, allocators are an important component of the C++ Standard Library. The standard library provides several data structures, such as list and set, commonly re...转载 2019-01-22 10:50:35 · 267 阅读 · 0 评论 -
Qt::QObject类
Qt::QObject类 QObject 类是Qt 所有类的基类。 QObject是Qt对象模型的核心。这个模型的中心要素就是一种强大的叫做信号与槽无缝对象沟通机制。你可以用 connect()函数来把一个信号连接到槽,也可以用disconnect()函数来破坏这个连接。为了避免永无止境的通知循环,你可以用blockSignal()函数来暂时阻塞信号。保护函数connectNoti...转载 2019-02-10 14:29:40 · 319 阅读 · 0 评论 -
C++ 虚函数表解析
C++ 虚函数表解析https://blog.csdn.net/a3192048/article/details/82190866 前言C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现...转载 2019-02-19 16:11:58 · 210 阅读 · 0 评论 -
C++11 多线程同步 互斥锁 条件变量
C++11 多线程同步 互斥锁 条件变量本文链接:https://blog.csdn.net/yangbodong22011/article/details/60348742在多线程程序中,线程同步(多个线程访问一个资源保证顺序)是一个非常重要的问题,Linux下常见的线程同步的方法有下面几种:互斥锁 条件变量 信号量这篇博客只介绍互斥量和条件变量的使用。互斥锁和条件变...转载 2019-08-27 13:40:00 · 239 阅读 · 0 评论 -
百度面经(C++)
百度面经(C++)https://blog.csdn.net/u012658346/article/details/52671148内推,二面跪一面:select & epoll两种机制的具体实现可以用两个epoll监听同一个描述符吗,有事件发生时,怎么工作hash怎么解决冲突一致性hash路由表的网段怎么存储、查找segment fault怎么用gdb调试,两个函...转载 2019-06-22 22:30:58 · 1479 阅读 · 0 评论 -
C++——多线程编程(一)std::thread
C++——多线程编程(一)std::threadhttps://blog.csdn.net/shanshangyouzhiyangM/article/details/52986185(一)与C++11多线程相关的头文件C++11 新标准中引入了四个头文件来支持多线程编程,他们分别是< atomic> ,< thread>,< mutex>,<...转载 2019-05-15 17:29:46 · 532 阅读 · 0 评论 -
善于指针---使用返回指针值的函数(续)
https://blog.csdn.net/lanzhihui_10086/article/details/39759137综合举个例子来说明一下,使用返回指针值的函数,也可以理解为利用指针传递内存。在返回指针时,除可以返回动态内存外,还可以返回静态存储区。但是不能利用指针传递桟内存,因为桟内存函数结束时也消失了,返回的会是一些垃圾内容,无效。基础内容见:善于指针---使用返回指针值的...转载 2019-05-15 10:57:05 · 149 阅读 · 0 评论 -
C++11 新特性之std::thread
C++11 新特性之std::threadhttps://blog.csdn.net/oyoung_2012/article/details/78958274从C++11开始,C++标准库已经支持了线程库了,其实在底层,仍旧使用的是平台相关的线程API有了std::thread之后,我们就不用在不同的平台使用不同的API了,比如Unix平台使用pthread, windows平台使...转载 2019-05-14 16:20:38 · 457 阅读 · 0 评论 -
C++ 拷贝构造函数和赋值运算符
C++ 拷贝构造函数和赋值运算符https://www.cnblogs.com/wangguchangqing/p/6141743.html本文主要介绍了拷贝构造函数和赋值运算符的区别,以及在什么时候调用拷贝构造函数、什么情况下调用赋值运算符。最后,简单的分析了下深拷贝和浅拷贝的问题。拷贝构造函数和赋值运算符在默认情况下(用户没有定义,但是也没有显式的删除),编译器会自动的隐式生成...转载 2019-04-25 16:42:57 · 113 阅读 · 0 评论 -
std::function
std::function参考资料• cplusplus.com:http://www.cplusplus.com/reference/functional/function/• cppreference.com:http://en.cppreference.com/w/cpp/utility/functional/functionstd::function简介• 类模板声明...转载 2019-04-26 16:36:37 · 618 阅读 · 0 评论 -
std::bind
bind是这样一种机制,它可以将参数绑定于可调用对象,产生一个新的可调用实体,这种机制在函数回调时颇为有用https://blog.csdn.net/caoshangpa/article/details/79173351std::bind参考资料• cplusplus.com:http://www.cplusplus.com/reference/functional/bind/...转载 2019-04-26 16:35:35 · 1511 阅读 · 0 评论 -
C++
https://blog.csdn.net/misayaaaaa/column/info/14799/2转载 2019-03-16 23:45:29 · 140 阅读 · 0 评论 -
C++ 11 创建和使用 shared_ptr
C++ 11 创建和使用 shared_ptrshared_ptr的类型是C + +标准库中一个聪明的指针,是为多个拥有者管理内存中对象的生命周期而设计的。在你初始化一个shared_ptr后,你可以复制它,把函数参数的值递给它,并把它分配给其它shared_ptr实例。所有实例指向同一个对象,并共享访问一个“控制块”,即每当一个新的shared_ptr被添加时,递增和递减引用计数...转载 2019-03-07 17:34:52 · 433 阅读 · 0 评论 -
C++11 之 override
在派生类的成员函数中使用override时,如果基类中无此函数,或基类中的函数并不是虚函数,编译器会给出相关错误信息。公有继承 公有继承包含两部分:一是"函数接口" (interface),二是"函数实现" (implementation) 如 Shape 类中,三个成员函数,表示三种继承方式:class Shape {public: virtual v...转载 2019-03-07 17:18:09 · 346 阅读 · 0 评论 -
C++ 之 基础回顾(一)
https://www.cnblogs.com/xinxue/p/5904788.html1 exe 程序1.1 最小 cppint main(){} // minimal cpp 思考一: 为什么最小程序没有return语句?1.2 Hello#include <iostream>int main(){ std::cou...转载 2019-03-07 17:13:51 · 197 阅读 · 0 评论 -
virtual
virtual void fun()=0纯虚函数,这种函数在派生类中必须重写,否则该派生来也是个虚基类别名指定这点就是最开始看到的source code。在C++11中提出了通过using指定别名。例如上面source code 中:using value_type = _Ty以后使用value_type value; 就代表_Ty value;这个让我们想起了typede...转载 2019-03-08 16:42:54 · 179 阅读 · 0 评论 -
pair
pair是一个模板数据类型,其中包含两个数据值,两个数据值可以不同如 pair<int,string>a(2,"fgh");则a是一个pair类型,它包括两个数据,第一个数据是int型2,第二个数据是string型"fgh"。 由于pair类型的使用比较繁琐,因为如果要定义多个形同的pair类型的时候,可以时候typedef简化声明:typedef pair&l...转载 2019-03-08 15:57:45 · 952 阅读 · 0 评论 -
C++ 原子操作 std::atomic<T>
C++ 原子操作 std::atomic<T>std::atomic<T>模板类可以使对象操作为原子操作,避免多线程竞争问题;请看如下代码,一目了然:class Test{public: Test() = default; void CThreadFunc() { for (int i = 0; i <...转载 2019-01-17 14:21:52 · 1111 阅读 · 0 评论 -
C11
pair是一个模板数据类型,其中包含两个数据值,两个数据值可以不同如 pair<int,string>a(2,"fgh");则a是一个pair类型,它包括两个数据,第一个数据是int型2,第二个数据是string型"fgh"。 由于pair类型的使用比较繁琐,因为如果要定义多个形同的pair类型的时候,可以时候typedef简化声明:typedef pair&l...转载 2018-12-24 11:17:52 · 1216 阅读 · 0 评论