Yuxxxxxxxxxx's Blog
  • 首页
  • 归档
  • 分类
  • 标签
  • 关于

Python中+=和普通+的区别

在 Python 开发(特别是使用 PyTorch 进行深度学习训练)时,许多人认为 a = a + b 和 a += b 是完全等价的。但在底层内存管理和性能表现上,它们有着本质的区别。理解这一点,对于优化数据处理管道和避免显存碎片化至关重要。 先看结论: a + b:创建新对象,不会修改原变量 a,只是返回相加结果 a += b:原地修改(增量赋值),优先修改变量本身;分可变数据类型、不可变
2026-06-13
工具 > PyTorch
#Python #PyTorch

PyTorch安装过程记录

一、安装 Anaconda下载地址:Anaconda | Individual Edition。 参考安装教程:【Anaconda】史上最全最详细的Anaconda下载安装及使用教程[通俗易懂] 二、下载 CUDA首先查看自己电脑 GPU 版本,方便下载对应版本的 pytorch,有下面两种方式: 打开 NVIDIA 控制面板: cmd 输入 nvidia-smi: 根据自己显卡驱动
2026-06-12
工具 > PyTorch
#深度学习

C++ 名称绑定与依赖名称

在 C++(尤其是模板编程)中,名称绑定 和 依赖名称 是编译器如何解析、查找和验证标识符(如变量名、函数名、类型名)的核心机制。 理解这两个概念,是掌握 C++ 模板编程、解释各种奇怪的模板编译错误(如“缺少 typename”或“未找到符号”)的关键。 一、依赖名称与非依赖名称模板中使用两种名称:依赖名称和非依赖名称。前者是依赖模板参数的类型或值的名称,可以是类型参数、非类型形参或模板参数。不
2026-06-10
C++ > 模板
#C++ #模板

C++ lambda模板

在 C++ 中,Lambda 模板 指的是能够像普通函数模板一样,接受泛型参数或显式模板参数的 Lambda 表达式。 Lambda 模板的发展经历了两个阶段: C++14 的泛型 Lambda(Generic Lambdas):使用 auto 关键字实现隐式模板化。 C++20 的显式模板 Lambda(Explicit Template Lambdas):引入了 `` 语法,
2026-06-09
C++ > 模板
#C++ #模板 #C++20

C++ 变量模板

一、引入变量模板是在 C++14 中引入,允许在命名空间范围内定义模板变量(可以表示一组全局变量),或者在类范围内定义模板变量(表示静态数据成员)。 例如: 12template <class T> constexpr T PI = T(3,1415926535897932385L); 其语法类似于声明变量(或数据成员),但与声明模板的语法相结合。 对于任何模板,该声明不能出现
2026-06-07
C++ > 模板
#C++ #模板 #C++14

C++ std::nullopt

一、基本概念简单来说,std::nullopt 是一个哨兵值(Sentinel Value),专门用来表示 std::optional 处于“无值”(空)的状态。 在底层,std::nullopt 的定义非常简单: 它的类型是 **std::nullopt_t**(一个空的强类型结构体)。 std::nullopt 是 std::nullopt_t 的一个 inline constexpr 常量
2026-06-06
C++ > 语言特性 > C++17
#C++ #C++17

C++ std::any

一、基本概念std::any 也是 C++17 引入的一个核心容器类。如果说 std::variant 是“类型安全的共用体(Union)”,那么 std::any 就是“类型安全的 void\* 指针”。 它能够存储任意类型的单个值,并且在运行时保留该值的类型信息,确保在取出数据时进行强类型检查。 在 C++17 之前,如果你需要一个可以接收“任何类型”的容器,通常只能用 void*。但 voi
2026-06-05
C++ > 语言特性 > C++17
#C++ #C++17

C++ std::variant

一、基本概念std::variant 是C++17引入的一个新的标准库类型,它提供了一种类型安全的联合体(Type-safe Union)。这个类可以在同一时间持有几种可能类型中的一个值。 相较于传统的 C 风格 union,std::variant 最大的优势是类型安全:它知道自己当前存的是什么类型,并在析构时正确调用对应类型的析构函数,不会发生内存泄漏或未定义行为。 std::variant
2026-06-03
C++ > 语言特性 > C++17
#C++ #C++17

C++ std::optional

一、基本概念C++17 引入了 std::optional,表示一个可能有值的对象(没有值时就是默认的 std::nullopt)。它提供了一种类型安全的方式来表示可能存在也可能不存在的值。 在 std::optional 出现之前,我们通常使用魔术值(如 -1、nullptr、空字符串)或通过指针/引用参数来表达“无值”的概念。这些方法要么不安全,要么语义模糊。std::optiona
2026-06-01
C++ > 语言特性 > C++17
#C++ #C++17

C++ 友元friend

在 C++ 中,一个类中可以有 public、protected、private 三种属性的成员,通过对象可以访问 public 成员,只有本类中的函数可以访问本类的 private 成员。下面就来介绍一种例外情况——友元(friend)。借助友元,可以使得其它类中的成员函数以及全局范围内的函数访问当前类的 private 成员。 一、友元函数在当前类以外定义的、不属于当前类的函数也可以在类中声明
2026-05-30
C++
#C++
123…13

搜索

Hexo Fluid