C/C++基础

348 篇文章
31 人订阅

全部文章

Dabelv

腾讯 · 后台开发工程师 (已认证)

C++以智能指针管理内存资源

C++作为一门应用广泛的高级编程语言,却没有像Java、C#等语言拥有垃圾回收(Garbage Collection )机制来自动进行内存管理,这也是C++一直...

213
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++仿函数

我们先从一个非常简单的问题入手。假设我们现在有一个数组,数组中存有任意数量的数字,我们希望能够计数出这个数组中大于10的数字的数量,你的代码很可能是这样的:

851
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++纯虚函数与抽象类

为什么说虚函数是C++最重要的特性之一呢,因为虚函数承载着C++中动态联编的作用,也即多态,可以让程序在运行时选择合适的成员函数。虚函数必须是类的非静态成员函数...

782
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++ explicit禁止单参数构造函数隐式调用

C++中单参数构造函数是可以被隐式调用的,主要有两种情形会隐式调用单参数构造函数: (1)同类型对象的拷贝构造;即用相同类型的其它对象来初始化当前对象。 (...

1095
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++多态的两种形式

多态(Polymorphisn)是面向对象程序设计(OOP)的一个重要特征。多态字面意思为多种状态。在面向对象语言中,一个接口,多种实现即为多态。C++中的多态...

681
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++ typename的双重含义

这两种写法并没有任何区别,都是标记T是模板类型参数,可以是任何类型,包括用户自定义类型或是语言的基本类型。虽然而这在用于模板类型参数申明时的作用完全相同,但是仍...

732
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++ 模板元编程简介

模板元编程(Template Metaprogramming,TMP)是编写生成或操纵程序的程序,也是一种复杂且功能强大的编程范式(Programming Pa...

813
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++模板特化与偏特化

模板特化(template specialization)不同于模板的实例化,模板参数在某种特定类型下的具体实现称为模板的特化。模板特化有时也称之为模板的具体化...

704
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++17 fold expression

C++11增加了一个新特性变参模板(variadic template),它可以接受任意个模版参数,参数包不能直接展开,需要通过一些特殊的方法,比如函数参数包的...

753
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++0x 通用属性

C++在不断的发展,但每一阶段的C++标准提供的功能都很难完全满足现实需求,于是为了弥补标准的不足或者扩增特性应用场景所需的特性,各大C++编译器厂商多多少少在...

562
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++11 原生字符串

原生字符串(Raw String)指不进行转义“所见即所得”的字符串。很多编程语言早已支持原生字符串,如C#、Python、Shell等。C++作为一门高级程序...

791
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++11 Unicode支持

在C++98中,为了支持Unicode字符,使用wchar_t类型来表示“宽字符”,但并没有严格规定位宽,而是让wchar_t的宽度由编译器实现,因此不同的编译...

983
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++11 变参模板

版权声明:感谢您对博文的关注!校招与社招,有需要内推腾讯的可以QQ(1589276509)or 微信(louislvlv)联系我哈,期待您的加入。 ...

582
Dabelv

腾讯 · 后台开发工程师 (已认证)

自动化测试工具QTP的使用实例

QTP是QuickTest Professional的简称,是一种自动化软件测试工具。在软件的测试过程中,QTP主要来用来通过已有的测试脚本执行重复的手动测试,...

623
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++异常处理的开销

C++异常是C++有别于C的一大特性 ,异常处理机制给开发人员处理程序中可能出现的意外错误带来了极大的方便,但为了实现异常,编译器会引入额外的数据结构与处理机制...

622
Dabelv

腾讯 · 后台开发工程师 (已认证)

STL四种智能指针

STL一共给我们提供了四种智能指针:auto_ptr、unique_ptr、shared_ptr和weak_ptr,auto_ptr是C++98提供的解决方案,...

722
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++11 POD类型

POD(Plain Old Data,普通旧数据)类型是从C++11开始引入的概念,Plain代表它是一个普通类型,Old代表它可以与C兼容。通俗的讲,一个类、...

842
Dabelv

腾讯 · 后台开发工程师 (已认证)

Linux命令(45)——svn命令

SVN是Apache Subversion的缩写 ,是一个开放源代码的版本控制系统。相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联...

342
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++11委托构造函数

委托构造函数(Delegating Constructor)由C++11引入,是对C++构造函数的改进,允许构造函数通过初始化列表调用同一个类的其他构造函数,目...

731
Dabelv

腾讯 · 后台开发工程师 (已认证)

C++11继承构造函数

子类为完成基类初始化,在C++11之前,需要在初始化列表调用基类的构造函数,从而完成构造函数的传递。如果基类拥有多个构造函数,那么子类也需要实现多个与基类构造函...

902

扫码关注云+社区