C/C++共113篇

面试题:什么是 C++ 的回调函数?为什么需要回调函数?

在C++中,回调函数(Callback Function) 是一种通过函数指针、函数对象(如 std::function)或 Lambda 表达式传递给其他函数的机制,允许在特定事件或条件发生时调用该函数。回调函...
程序百科的头像-程序百科程序百科37天前
05214

面试题:C++ 中为什么要使用 nullptr 而不是 NULL?

在C++中,nullptr 是C++11引入的关键字,用于表示空指针。与传统的 NULL 相比,nullptr 具有以下优势: 1. 类型安全 NULL 的问题: 在C++中,NULL 通常被定义为 0...
程序百科的头像-程序百科程序百科37天前
0345

面试题:什么是大端序?什么是小端序?

大端序(Big Endian) 和 小端序(Little Endian) 是两种不同的字节序(Byte Order),用于描述多字节数据(如整数、浮点数)在内存中的存储方式。它们的区别在于字节的排列顺...
程序百科的头像-程序百科程序百科37天前
0395

面试题:C++ 中 include 和 include “a.h” 有什么区别?

在C++中,#include <a.h> 和 #include 'a.h' 是两种不同的包含头文件的方式,它们的区别主要在于编译器查找头文件的路径顺序。 1. #include <a.h> 用途:用于...
程序百科的头像-程序百科程序百科37天前
0509

面试题:C++ 是否可以 include 源文件?

在C++中,可以使用 #include 包含源文件(.cpp 文件),但不推荐这样做。以下是详细解释: 1. 为什么可以包含源文件? #include 是一个预处理指令,它的作用是将指定文件...
程序百科的头像-程序百科程序百科37天前
0327

面试题:C++ 中什么是深拷贝?什么是浅拷贝?写一个标准的拷贝构造函数?

在C++中,拷贝是指用一个对象初始化另一个对象。拷贝分为深拷贝(Deep Copy)和浅拷贝(Shallow Copy),它们的区别在于如何处理指针或动态分配的资源。 1. 浅拷贝(Shallow Copy) 定义:...
程序百科的头像-程序百科程序百科37天前
04512

面试题:C++ 中命名空间有什么作用?如何使用?

在C++中,命名空间(Namespace) 是一种用于组织代码的机制,主要用于避免名称冲突(Name Collision)。命名空间将全局作用域划分为不同的区域,每个区域内的名称是唯一的,从而可以在不同...
程序百科的头像-程序百科程序百科37天前
04512

面试题:C++ 中友元类和友元函数有什么作用?

在C++中,友元(Friend) 是一种机制,允许某个类或函数访问另一个类的私有(private)和保护(protected)成员。友元分为两种: 友元类(Friend Class) 友元函数(Friend Function) 1.&...
程序百科的头像-程序百科程序百科37天前
05110

面试题:C++ 中如何设计一个线程安全的类?

在C++中设计一个线程安全的类,意味着在多线程环境下,类的成员函数可以被多个线程安全地调用,而不会导致数据竞争或未定义行为。以下是设计线程安全类的一些关键步骤和注意事项: 1. 使用互斥...
程序百科的头像-程序百科程序百科37天前
02413

面试题:C++ 如何调用 C 语言的库?

在C++中调用C语言库时,由于C++和C的编译器和链接器对函数名称的处理方式不同(C++支持函数重载,因此会对函数名称进行名称修饰(name mangling),因此需要采取一些措施来确保C++能够正确调用C...
程序百科的头像-程序百科程序百科37天前
02314