C++散记
Mo先生
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
C++杂谈 inline关键字
1.inline用于把函数指定为内联函数,且该关键字需要与函数定义放在一起,与函数声明放在一起没有效果。2.内联函数一般只适用于比较精简的小函数,实际上内联函数是通过牺牲空间去换取时间上的效率,如果函数过于庞大会造成大量空间的浪费,所以需要权衡空间和时间上的平衡。内联函数最重要的使用地方是用于类的存取函数。3.内联函数的使用方法(1)在类中定义的函数不需要加inline修饰,编译器会把它自...原创 2018-11-05 11:04:43 · 230 阅读 · 0 评论 -
C++杂谈 为什么需要虚析构函数
1.虚函数:在类的成员函数前面加virtual关键字的函数;一般把虚函数定义在public区,方便在主函数中调用如果一个类有一个虚函数,则该类就有一个虚函数列表,所有该类的对象都共享这个虚函数表;(QT调试过程中显示的是vptr)如果一个类有一个或者一个以上的虚函数,则该类有且只有一张虚函数表,每个类都只有一个虚函数表,该类的所有对象都共享这张虚函数表子类的虚函数表中子类的虚函数覆盖父类的...原创 2018-11-05 12:33:09 · 20323 阅读 · 10 评论 -
C++杂谈 为什么类的空指针对象可以访问类某些的成员函数
class TestObject{public:TestObject(){std::cout << “TestObject!” << std::endl;}~TestObject(){std::cout << “~TestObject!” <&amp原创 2018-11-05 18:29:46 · 481 阅读 · 0 评论 -
C++杂谈 简单工厂模式 装备 反射机制技能
反射机制的实现 Reflect.h#pragma once#include <string>#include <map>#include <iostream>typedef void* (*register_func)();class Obje原创 2018-11-09 15:05:40 · 281 阅读 · 0 评论 -
auto在std::list中的奇葩现象
void Composite::Feature(){ std::cout << m_name << " Feature: support!" << std::endl; std::list<Component*>::iterator iter = m_list.begin(); for (; iter != m_list.end(); ite...原创 2018-12-03 10:24:56 · 1347 阅读 · 0 评论
分享