
面试相关
GHL284271090
这个作者很懒,什么都没留下…
展开
-
std::map、unordered_map的key是自定义对象,需要做什么
map内部使用红黑树,需要对键进行排序。默认使用 < 运算符来比较键;因此,如果键是自定义对象,则需要为该对象定义比较函数或重载<运算符。原创 2025-03-25 11:00:59 · 244 阅读 · 0 评论 -
面试:类模版中函数声明在.h,定义在.cpp中,其他cpp引用引入这个头文件,会有什么错误?
当编译器编译一个源文件时,会根据文件中函数的调用去查找函数声明,如果找到了匹配的声明,编译器就认为这个函数存在,并生成一个对外部符号的引用。原创 2025-01-10 18:46:07 · 537 阅读 · 0 评论 -
面试:C++类成员初始化顺序
在这个例子中,Derived类的构造函数首先调用base的构造函数,然后按照成员变量声明的顺序(即a,然后b,最后c)来初始化,即便在构造函数初始化列表中的顺序是不同的。3、基类构造函数:如果类从一个或多个基类继承而来,基类的构造函数在子类的构造函数之前被调用。1、非静态数据成员:按它们在类定义的声明顺序初始化,不会按它们在初始化列表的顺序。2、静态数据成员:在main函数启动之前,并且只初始化一次。4、常量成员和引用成员:必须在初始化列表中初始化。原创 2025-01-10 14:43:10 · 348 阅读 · 0 评论