
C++
文章平均质量分 59
Ziven-Hu
菜鸟,加油!
展开
-
C++中的默认函数与default和delete用法
一、类中的默认函数 a.类中默认的成员函数 1.默认构造函数 2.默认析构函数 3.拷贝构造函数 4.拷贝赋值函数 5.移动构造函数 6.移动拷贝函数 b.类中自定义的操作符函数 1.operator 2.operator& 3.operator&& 4.operator* 5.operator转载 2017-11-01 10:59:07 · 326 阅读 · 0 评论 -
使用std::function作为函数入参
1. 关于std::function()在C语言的时代,我们可以使用函数指针来吧一个函数作为参数传递,这样我们就可以实现回调函数的机制。到了C++11以后在标准库里引入了std::function模板类,这个模板概括了函数指针的概念函数指针只能指向一个函数,而std::function对象可以代表任何可以调用的对象,比如说任何可以被当作函数一样调用的对象。当你创建一个函数指针的时候,你必须定义这个...转载 2018-03-24 12:13:00 · 11534 阅读 · 0 评论 -
C++ std::function的用法
类模版std::function是一种通用、多态的函数封装。std::function的实例可以对任何可以调用的目标实体进行存储、复制、和调用操作,这些目标实体包括普通函数、Lambda表达式、函数指针、以及其它函数对象等。std::function对象是对C++中现有的可调用实体的一种类型安全的包裹(我们知道像函数指针这类可调用实体,是类型不安全的)。通常std::function是一个函数对象...转载 2018-03-24 11:21:42 · 50546 阅读 · 2 评论 -
c语言程序的存储区域与const关键字的使用方法
一.C语言程序的存储区域1.由C语言代码(文本文件)形成可执行程序(二进制文件),需要经过编译-汇编-连接三个阶段。编译过程把C语言文本文件生成汇编程序,汇编过程把汇编程序形成二进制机器代码,连接过程则将各个源文件生成的二进制机器代码文件组合成一个文件。2.C语言编写的程序经过编译-连接后,将形成一个统一文件,它由几个部分组成。在程序运行时又会产生其他几个部分,各个部分代表了不同的存储区域:1&g...转载 2018-03-18 20:48:33 · 396 阅读 · 0 评论 -
将Visual Studio编译器默认为X64
一般安装的vs,当新建一个项目时,默认的是在x86上编译,而我们现在用的系统几乎都是64位系统,这时往往要手动修改配置管理器,难免有点麻烦,那么如何让Visual Studio编译器默认为x64呢?可以修改VS安装目录下:Microsoft Visual Studio 12.0\VC\VCWizards里面的三个文件:default.vcxproj、DefaultTest.vcxproj、vcup...原创 2018-03-12 11:33:33 · 6396 阅读 · 0 评论 -
C++11 std::chrono库详解
所谓的详解只不过是参考www.cplusplus.com的说明整理了一下,因为没发现别人有详细讲解。 chrono是一个time library, 源于boost,现在已经是C++标准。话说今年似乎又要出新标准了,好期待啊! 要使用chrono库,需要#include<chrono>,其所有实现均在std::chrono namespace下。注意标准库里面的每个命名空间代表...转载 2018-03-09 12:15:34 · 448 阅读 · 0 评论 -
linux动态库与静态库的创建和优缺点比较
动态库与静态库优缺点比较linux下的库有两种:静态库和共享库(动态库)。 二者的不同点在于代码被载入的时刻不同。静态库的代码在编译过程中已经被载入可执行程序,因此体积较大。共享库的代码是在可执行程序运行时才载入内存的,在编译过程中仅简单的引用,因此代码体积较小。我们在编写一个 C 语言程序的时候,经常会遇到好多重复或常用的部分,如果每次都重新编写固然是可以的,不过那样会大大降低工作效率,并且影响...转载 2018-03-15 12:23:58 · 626 阅读 · 0 评论 -
C++中的STL中map用法详解
Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据 处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一 种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识转载 2018-02-06 11:53:35 · 233 阅读 · 0 评论 -
C++11 std::bind std::function 高级用法
从最基础的了解,std::bind和std::function[cpp] view plain copy/* * File: main.cpp * Author: Vicky.H * Email: eclipser@163.com */ #include #include #include转载 2018-02-06 10:57:38 · 318 阅读 · 0 评论 -
C++11 Lambda表达式
C++ 11 Lambda表达式C++11的一大亮点就是引入了Lambda表达式。利用Lambda表达式,可以方便的定义和创建匿名函数。对于C++这门语言来说来说,“Lambda表达式”或“匿名函数”这些概念听起来好像很深奥,但很多高级语言在很早以前就已经提供了Lambda表达式的功能,如C#,Python等。今天,我们就来简单介绍一下C++中Lambda表达式的简单使用。转载 2018-02-06 10:32:58 · 177 阅读 · 0 评论 -
C++ 11 Lambda表达式
C++11的一大亮点就是引入了Lambda表达式。利用Lambda表达式,可以方便的定义和创建匿名函数。对于C++这门语言来说来说,“Lambda表达式”或“匿名函数”这些概念听起来好像很深奥,但很多高级语言在很早以前就已经提供了Lambda表达式的功能,如C#,Python等。今天,我们就来简单介绍一下C++中Lambda表达式的简单使用。声明Lambda表达式Lambda表达式完整转载 2018-02-02 17:00:24 · 200 阅读 · 0 评论 -
C++ 11 std::function std::bind使用
cocos new 出新的项目之后,仔细阅读代码,才发现了一句3.0区别于2.0的代码:auto closeItem = MenuItemImage::create( "CloseNormal.png", "Clos转载 2018-02-02 16:48:55 · 423 阅读 · 0 评论 -
C++标准库学习笔记-5-(Container)
声明:这个博文所有内容均来自于C++标准库-自学教程与参考手册(第二版)英文版 上册。如果转载,务必附带本声明,并注明出处。 STL为了满足不同需求而创造了一些列通用的容器 **一、Containers** 1、Vector 使用vector需要添加头文件,vector也包含在std namespace. vector的所有函数可以在这里查到。转载 2017-12-07 17:31:50 · 371 阅读 · 0 评论 -
一文说尽C++赋值运算符重载函数(operator=)
关于C++的赋值运算符重载函数(operator=),网络以及各种教材上都有很多介绍,但可惜的是,内容大多雷同且不全面。面对这一局面,在下在整合各种资源及融入个人理解的基础上,整理出一篇较为全面/详尽的文章,以飨读者。正文:Ⅰ.举例例1#include#includestring>using namespace std;class MyStr{private:转载 2017-12-09 12:09:28 · 997 阅读 · 2 评论 -
Eigen中的基本函数
原文地址C++矩阵库 Eigen 快速入门不仅有函数的基本形式,还有对应的matlab函数,用起来很方便。 Eigen 矩阵定义#include Matrixdouble, 3, 3> A; // Fixed rows and cols. Same as Matrix3d.Matrixdouble, 3, Dynamic> B; /转载 2017-11-10 14:37:24 · 631 阅读 · 0 评论 -
const T、const T*、T *const、const T&、const T*& 的区别
这里的T指的是一种数据类型,可以是int、long、doule等基本数据类型,也可以是自己类型的类型class。单独的一个const你肯定知道指的是一个常量,但const与其他类型联合起来的众多变化,你是不是就糊涂了?下面我们一一来解析。const T定义一个常量,声明的同时必须进行初始化。一旦声明,这个值将不能被改变。int i = 5;const int constInt转载 2017-11-01 15:18:05 · 3225 阅读 · 1 评论 -
C++中static_cast, dynamic_cast, const_cast用法/使用情况及区别解析
首先回顾一下C++类型转换:C++类型转换分为:隐式类型转换和显式类型转换第1部分. 隐式类型转换又称为“标准转换”,包括以下几种情况:1) 算术转换(Arithmetic conversion) : 在混合类型的算术表达式中, 最宽的数据类型成为目标转换类型。 int ival = 3;double dval = 3.14159;转载 2017-10-24 14:23:07 · 237 阅读 · 0 评论 -
c++中static的用法详解
转自:http://blog.youkuaiyun.com/majianfei1023/article/details/45290467C 语言的 static 关键字有三种(具体来说是两种)用途:1. 静态局部变量:用于函数体内部修饰变量,这种变量的生存期长于该函数。[cpp] view plain copyint foo(){ static int i = 1; // note:1 /...转载 2018-05-11 11:54:39 · 387 阅读 · 0 评论