![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c++11
文章平均质量分 92
QTVLC
这个作者很懒,什么都没留下…
展开
-
C++中NULL和nullptr的区别
在编写C程序的时候只看到过NULL,而在C++的编程中,我们可以看到NULL和nullptr两种关键字,其实nullptr是C++11版本中新加入的,它的出现是为了解决NULL表示空指针在C++中具有二义性的问题,为了弄明白这个问题,我查找了一些资料,总结如下。一、C程序中的NULL在C语言中,NULL通...转载 2020-05-06 11:33:43 · 1022 阅读 · 0 评论 -
C++多态虚函数表详解(多重继承、多继承情况)
本文关键词:C++ 多态 多继承 多重继承 虚函数表 虚函数指针 动态绑定概述:C++相对其他面向对象语言来说,之所以灵活、高效。很大程度的占比在于其多态技术和模板技术。C++虚函数表是支撑C++多态的重要技术,它是C++动态绑定技术的核心。本文章将着重图解虚函数表相关知识,在阅读本文前,博主已经默认你已经学习了C++多态的语法,并且通过代...转载 2019-04-29 17:00:42 · 862 阅读 · 0 评论 -
C++ 虚函数表解析
C++ 虚函数表解析<?xml:namespace prefix = o /> 陈皓http://blog.csdn.net/haoel 前言 C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言...转载 2019-04-29 15:39:25 · 173 阅读 · 0 评论 -
C++静态成员函数访问非静态成员的几种方法
大家都知道C++中类的成员函数默认都提供了this指针,在非静态成员函数中当你调用函数的时候,编译器都会“自动”帮你把这个this指针加到函数形参里去。当然在C++灵活性下面,类还具备了静态成员和静态函数,即class A{public: static void test() { m_staticA += 1; }private: stat...转载 2019-04-23 09:11:39 · 6880 阅读 · 4 评论 -
基类成员函数能否调用基类的纯虚函数?纯虚函数,多态
理解虚函数( virtual function )的几个关键点:理解早绑定(early binding)、晚绑定(late binding)。所谓early binding:On compile time,就能明确一个函数调用是对哪个对象的哪个成员函数进行的,即编译时就晓得了确定的函数地址;所谓late binding:On compile time,对函数(虚函数)的调用被搞成了:pObj-...转载 2019-04-26 09:43:15 · 3144 阅读 · 0 评论 -
STL之vector注意事项
vector上镜率非常高,但是最近又被他fuck了一下。使用的就是vector的erase方法。erase–return value 首先需要明确一下vector的两种erase:C++98中是这样的:iterator erase (iterator position);iterator erase (iterator first, it...转载 2019-04-26 08:24:52 · 224 阅读 · 0 评论 -
C/C++ memmove与memcpy的区别及实现
1.与字符串函数strcpy区别:memcpy与memmove都是对内存进行拷贝可以拷贝任何内容,而strcpy仅是对字符串进行操作。memcpy与memmove拷贝多少是通过其第三个参数进行控制而strcpy是当拷贝至'\0'停止。2.函数说明: memcpy函数的功能是从源src所指的...转载 2019-03-20 14:11:51 · 268 阅读 · 0 评论 -
c++11 = default (c++ primer中文版 第五版 p237)
构造函数()=default.该构造函数不接受任何实参, 所以他是一个默认构造函数. 定义这个构造函数的目的是仅仅是因为我们既需要其他类型的构造函数, 也需要默认构造函数. 希望这个函数等同于合成默认构造函数.c++新标准中, 如果我们需要默认的行为, 可以通过在参数列表后面写上 = default 来要求编译器生成构造函数.其中, = default 既可以和声明一起出现在类的内部, ...翻译 2019-02-26 18:50:20 · 202 阅读 · 0 评论 -
关于C++ const 的全面总结
C++中的const关键字的用法非常灵活,而使用const将大大改善程序的健壮性,本人根据各方面查到的资料进行总结如下,期望对朋友们有所帮助。 Const 是C++中常用的类型修饰符,常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。 一、Const作用 如下表所示: No. 作用 ...转载 2018-10-11 14:30:28 · 1655 阅读 · 0 评论 -
Explicit Constructors(显式构造函数)
按照默认规定,只有一个参数的构造函数也定义了一个隐式转换,将该构造函数对应数据类型的数据转换为该类对象,如下面所示:class String {String ( const char* p ); // 用C风格的字符串p作为初始化值//…}String s1 = “hello”; //OK 隐式转换,等价于St...转载 2018-09-14 09:13:21 · 197 阅读 · 0 评论 -
'isnan' was not declared in this scope
‘isnan’ was not declared in this scope isnan在cmath中被取消宏定义// These are possible macros imported from C99-land.#undef fpclassify#undef isfinite#undef isinf#undef isnan在使用的isnan前加上std::即可。...原创 2018-09-04 15:27:23 · 3381 阅读 · 0 评论 -
C++11新标准:decltype关键字
原文地址:https://www.cnblogs.com/cauchy007/p/4966485.html一、decltype意义 有时我们希望从表达式的类型推断出要定义的变量类型,但是不想用该表达式的值初始化变量(如果要初始化就用auto了)。为了满足这一需求,C++11新标准引入了decltype类型说明符,它的作用是选择并返回操作数的数据类型,在此过程中,编译器分析表达式并得到它的类型...转载 2018-08-21 19:03:39 · 159 阅读 · 0 评论 -
类内const数据成员或引用或其他类类型成员(该类没有默认构造函数)初始化的方法
在《C++Primer中文版(第五版)电子工业出版社》p259中提到,“如果成员是const、引用,或者属于某种未提供默认构造函数的类类型,我们必须通过构造函数初始值列表为这些成员提供初值”又想到,在类内声明时就可以对数据成员进行初始化(根据p64C++11新标准规定,可以为数据成员提供一个类内初始值。创建对象时,类内初始值将用于初始化数据成员。没有初始值的成员将被默认初始化(p40))。...原创 2018-08-27 19:44:18 · 851 阅读 · 0 评论 -
C++11中的std::function
原文地址:https://www.cnblogs.com/diegodu/p/6180350.html http://www.jellythink.com/archives/771 看看这段代码先来看看下面这两行代码:std::function<void(EventKeyboard::KeyCode, Event*)> onKeyPressed;std::...转载 2018-08-22 14:43:00 · 492 阅读 · 0 评论