暂无搜索历史
类型擦除是 C++ 中一种用于实现多态性的编程技术,它允许在不牺牲性能或引入不必要的运行时开销的情况下进行多态性操作。通过隐藏对象的实际类型并提供统一的接口,类...
我们简单的介绍了下移动语义,今天聊聊编译器的一个常见优化拷贝消除(copy elision)。
PIMPL是pointer to implementation的缩写,意指指向实现的指针,是一种广泛使用的减少编译依赖性的技术。
最近在抓代码质量这块,修改编译器告警规则入手,结合群里推荐的的clang-tidy来进行静态代码分析,真所谓不看不知道,一看吓一跳,光提示就一堆,挨个进行分析,...
昨天在查阅某个问题的时候,突然看到了关于各个操作的性能损耗,今天就借助这篇文章,聊聊我们印象中性能很差的虚函数~~。
几周前,出版社赠了本C++之父新作<<C++之旅>>,因为当时比较忙,所以一直在手边放着,有时间的时候随意翻几页,断断续续也看了一部分,今天借助本文,分享下。
也就是说,在fun()函数内部,将参数x赋值给一个string类型的v,但是在main()函数中 ,调用fun()函数时候传入了1,这个编译器会推导为int类型...
在C++中,编译器在编译某个源文件时确实需要查看其中所有需要调用的函数的声明。这是因为C++是一种静态类型语言,编译器在编译阶段需要了解函数的签名(返回类型、函...
最近在补一些基础知识,恰好涉及到了智能指针std::weak_ptr在解决std::shared_ptr时候循环引用的问题,如下:
•template<typename T> void func(T& param);在这个示例函数中,如果传递进是一个const int&的对象,那么T推导出来...
群里经常有这样一个现象,当有新人进群的时候,总会有个面试环节,经常问的一个问题就是std::string能否被继承,一开始可能是技术问题,后面多了,就被玩成了梗...
自C++11起,引入了新的枚举,至此,C++支持两种枚举,如果将新引入的枚举成为scoped enumerations的话,那么之前的则成为unscoped e...
统一初始化又称为列表初始化,自C++11引入,使用花括号(Brace-initialization)方式,主要目的是为了简化和统一不同的初始化方式,提高代码的可...
最近在阅读C++ Templates 2nd,发现有些很有意思的新特性,今天,借助本文,分享给大家。
说到C++中的Empty Base Optimization(简称ebo)可能大家还是比较陌生,但是C++中每天都在用的std::string中就用到了ebo。
最近在升级系统和进行一些性能优化,业余时间也看一些技术书籍和视频,看了下上次更新文章的时间,大致在一个月前了,确实有点久了,所以赶紧拾起来,不能让大伙忘了我不是...
C语言支持类型别名typedef,显然,CPP也支持咯。不过自CPP11(也称之为Modern CPP)开始,引入了using关键字用以表示类型别名。
好久没发文了,一方面因为实在太忙了,一方面也在自我提升,发现要学的越来越多。在群里的,大抵都知道我上半年基本在重构和优化,将gcc版本进行了升级,从之前的4.9...
自从在使用 std::thread 构造函数过程中遇到了 Callable 类型的概念以来用到了很多关于它的使用. 因此本文把使用/调查结果总结出来. 包括 C...
std::map<K, V>的insert方法返回std::pair<iterator, bool>,两个元素分别是指向所插入键值对的迭代器与指示是否新插入元素...
暂未填写学校和专业