Pybind11记述:一

Pybind11记述:一

bingliaolong C++ Python 11个月前 2 0

概述 Pybind11是一个用于将C++代码与Python绑定的轻量级头文件库,使得可以轻松地在Python中调用C++函数和类 还可以让C++代码调用Python的功能和库 理解 可以把Pybind11理解为一个中间层,提供了在C++中调用Python代码或在Python中调用...

Effective C++_第五篇

Effective C++_第五篇

bingliaolong C++ 11个月前 2 0

45 使用成员函数模板来接受所有兼容类型 概述 在C++模板编程中,成员函数模板允许类的成员函数独立于类的模板参数进行模板化,从而使得这些成员函数可以接受比类的模板参数更广泛的类型 问题描述 假设你有一个模板类,其某个成员函数需要处理比类模板参数更广泛的类型 传统的类模板参数限制...

Effective C++_第四篇

Effective C++_第四篇

bingliaolong C++ 12个月前 3 0

34 区分接口继承和实现继承 概述 在C++的面向对象编程中,继承可以用于两种目的:接口继承和实现继承 理解并区分这两种继承方式有助于设计更清晰、可维护和灵活的类结构 接口继承 子类继承基类的接口,但可以重新定义(覆盖)基类的方法 接口继承通常用于定义类的行为约定,使得不同的子类...

Effective C++_第三篇

Effective C++_第三篇

bingliaolong C++ 12个月前 2 0

23 优先选择非成员非友元函数,而不是成员函数 概述 优先考虑使用非成员非友元函数,而不是成员函数 这种做法有助于保持类的接口简洁,提高代码的可读性和可维护性 为什么优先选择非成员非友元函数 增强封装性: 非成员函数不需要访问类的私有或受保护成员,因此可以减少类的内部实现细节暴露...

Effective C++_第二篇

Effective C++_第二篇

bingliaolong C++ 12个月前 3 0

12 复制对象的所有部分 概述 在C++中,实现拷贝构造函数和赋值运算符时,确保复制对象的所有成员变量是至关重要的 忽略某些成员变量可能会导致不完整或错误的对象状态,进而引发难以追踪的错误 为什么要复制对象的所有部分 保持对象的一致性: 所有成员变量都应该在拷贝时保持一致,以确保...

C++20_第一篇

C++20_第一篇

bingliaolong C++ 12个月前 3 0

语言特性 概念Concepts 概述 概念用于约束模板参数,提供了一种简洁的方式来指定模板参数的要求 约束模板参数,增强代码可读性和错误提示 示例 示例1 示例2 范围库(Ranges) 概述 提供声明式数据操作,支持惰性求值和链式调用 示例 过滤偶数并平方 协程(Corouti...

C++17_第三篇

C++17_第三篇

bingliaolong C++ 12个月前 3 0

结构化绑定 结构化绑定允许我们解构和绑定返回的元组、数组或结构体中的值,使得代码更加简洁和可读 嵌套命名空间 C++17 允许使用嵌套命名空间声明的简写方式,减少冗长的代码 std::filesystem 跨平台文件系统操作 std::variant std::variant 是...

C++14_第二篇

C++14_第二篇

bingliaolong C++ 12个月前 1 0

变量模板 C++14引入了变量模板,使得可以为变量定义模板 make_unique C++14引入了std::make_unique,提供了一种创建std::unique_ptr的简便方式 std::make_unique 是一个模板函数,用于创建 std::unique_ptr...

C++_函数模板、类模板、特化、模板元编程、SFINAE、概念

C++_函数模板、类模板、特化、模板元编程、SFINAE、概念

bingliaolong C++ 1年前 16 0

模板 概述 C++模板是一个强大的编程工具,使得可以编写通用的、类型安全的代码 模板主要用于函数和类的泛型编程,允许你定义通用算法和数据结构,然后在需要时使用具体类型进行实例化 使用场景 通用算法: 模板允许你编写通用算法,如排序、搜索等,而无需针对每种类型重复实现 容器类: 标...

C++_多态、类型转换、数据段、BSS段、类型视图

C++_多态、类型转换、数据段、BSS段、类型视图

bingliaolong C++ 1年前 8 0

多态 概述 多态性(Polymorphism)是面向对象编程的一个核心概念,它允许同一个接口调用在不同对象上执行不同的操作 在C++中,多态性主要通过继承和虚函数实现 多态性使代码更具灵活性和可扩展性 因为你可以编写更通用的代码,依赖于抽象基类而不是具体的派生类 多态的类型 编译...

扫一扫二维码分享