随笔分类 - c++
摘要:转https://blog.csdn.net/wangshubo1989/article/details/49748703 按值传递的意义是什么? 当一个函数的参数按值传递时,这就会进行拷贝。当然,编译器懂得如何去拷贝。 而对于我们自定义的类型,我们也许需要提供拷贝构造函数。 但是不得不说,拷贝的代
阅读全文
摘要:转自https://blog.csdn.net/fjzpdkf/article/details/50249287 lambda表达式是C++11最重要也最常用的一个特性之一。lambda来源于函数式编程的概念,也是现代编程语言的一个特点。 一.函数式编程简介 定义:简单说,“函数式编程”是一种“编程
阅读全文
摘要:为什么C++11引入std::future和std::promise?C++11创建了线程以后,我们不能直接从thread.join()得到结果,必须定义一个变量,在线程执行时,对这个变量赋值,然后执行join(),过程相对繁琐。 thread库提供了future用来访问异步操作的结果。std::p
阅读全文
摘要:C++本身有引用(&),为什么C++11又引入了std::ref? 主要是考虑函数式编程(如std::bind)在使用时,是对参数直接拷贝,而不是引用。如下例子: 上述代码在执行std::bind后,在函数f()中n1的值仍然是1,n2和n3改成了修改的值。说明std::bind使用的是参数的拷贝而
阅读全文
摘要:我们也要时刻清醒,有时候右值会转为左值,左值会转为右值。 (也许“转换”二字用的不是很准确) 如果我们要避免这种转换呢? 我们需要一种方法能按照参数原来的类型转发到另一个函数中,这才完美,我们称之为完美转发。 std::forward就可以保存参数的左值或右值特性。 因为是这样描述的: When u
阅读全文
摘要:最近在写一段代码的时候,突然很好奇C++11中对push_back有没有什么改进以增加效率,上网搜了一些资料,发现果然新增了emplace_back方法,比push_back的效率要高很多。 首先,写了一个类用于计时, //time_interval.h #pragma once #include
阅读全文
摘要:转自https://blog.csdn.net/yhl_leo/article/details/50865552 1 基本语法 decltype 类型说明符生成指定表达式的类型。在此过程中,编译器分析表达式并得到它的类型,却不实际计算表达式的值。 语法为: 1 编译器使用下列规则来确定express
阅读全文
摘要:转自知乎TIM chen 互斥锁和互斥量在我的理解里没啥区别,不同叫法。广义上讲可以值所有实现互斥作用的同步机制。狭义上讲指的就是mutex这种特定的二元锁机制。 互斥锁的作用就是互斥,mutual exclusive,是用来保护临界区(critical section)的。所谓临界区就是代码的一个
阅读全文
摘要:#define _CRT_SECURE_NO_WARNINGS #include #include #include #include //c++11 类默认函数的控制:"=default" 和 "=delete"函数 /* C++ 的类有四类特殊成员函数,它们分别是:默认构造函数、析构函数、拷贝构造函数以及拷贝赋值运算符。 这些类的特殊成员函数负责创建、初始化、销毁,或者拷贝类的...
阅读全文
摘要:这个博主写的文章真是细腻,全面,严谨,应当多读几回 原文http://www.cnblogs.com/QG-whz/p/5517643.html 阅读目录 以良好的方式编写C++ class Class with pointer member(s):记得写Big Three static与类 阅读目
阅读全文
摘要:如果有这么一个结构体 这么调用 它的内存会是什么样呢? 事实上,内存中会储存有11个SOCKET,并且可以通过Set->fd_array[10] ,Set->fd_array[9]这样来调用.因为内存是没有结构的,只要你足够大,随便怎么放.这种写法的适用情况比如用select io模型,套接字限制不
阅读全文
摘要:上一篇博客详细陈述了类库开发的各个知识点(http://blog.csdn.net/z702143700/article/details/45989993),本文将进一步陈述,对于类库开发过程中导出类的开发规范问题。 C/C++开发的DLL当初是作为函数级共享库设计的,并不能真正提供一个类所必需的信
阅读全文
摘要:1.基础介绍 c++11中,线程是通过std::thread对象来开始的,用法为 这样就开启了一个新线程,并且运行的是do_work这个函数 要注意的是当给线程构造函数传递一个临时的且未命名的变量,要用新的方法如下 以上代码会在新线程中执行Hello函数,其中这里类名后跟括号的叫匿名对象,即默认构造
阅读全文

浙公网安备 33010602011771号