包含标签 C++ 的文章

C++模板类型推导

模板是C++的重要特性,是C++标准模板库的基础。模板可以根据数据类型自动生成代码,大大减少重复代码。模板实例化的时候编译器需要根据具体变量推导数据类型,模板推导出的类型很多时候是显而易见的,有些时候却不太明显,本文详细阐述一下C++模板的类型推导机制。

……

阅读全文

LeetCode-2. Add Two Numbers(两数相加)C++实现

给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。

如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。

您可以假设除了数字 0 之外,这两个数都不会以 0 开头。

……

阅读全文

LeetCode-1. Two Sum(两数之和)C++实现

给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。

你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。

……

阅读全文

C++构造函数、析构函数执行顺序详解

构造函数执行顺序

  1. 调用虚基类构造函数(如有多个则按虚基类声明顺序从左到右)
  2. 调用基类构造函数(如有多个则按基类声明顺序从左到右)
  3. 设定虚函数表指针值(virtual table pointer)
  4. 执行初始化列表、调用成员变量构造函数(按成员变量声明顺序)
  5. 执行自身构造函数
……

阅读全文