<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/hn_tzy</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; hn_tzy]]></copyright><item><title><![CDATA[MATLAB基本数据类型]]></title><link>https://blog.csdn.net/hn_tzy/article/details/147234325</link><guid>https://blog.csdn.net/hn_tzy/article/details/147234325</guid><author>hn_tzy</author><pubDate>Mon, 14 Apr 2025 22:27:30 +0800</pubDate><description><![CDATA[这些类型分别占用 1、2、4、8 个字节，表示不同范围的整数值。如：x = "abc"]]></description><category></category></item><item><title><![CDATA[MATLAB2022b安装]]></title><link>https://blog.csdn.net/hn_tzy/article/details/147196321</link><guid>https://blog.csdn.net/hn_tzy/article/details/147196321</guid><author>hn_tzy</author><pubDate>Sun, 13 Apr 2025 20:09:01 +0800</pubDate><description><![CDATA[图文并茂，手把手教会你怎么安装MATLAB2022b]]></description><category></category></item><item><title><![CDATA[C++11中的可变长模板参数]]></title><link>https://blog.csdn.net/hn_tzy/article/details/142468268</link><guid>https://blog.csdn.net/hn_tzy/article/details/142468268</guid><author>hn_tzy</author><pubDate>Mon, 23 Sep 2024 21:32:10 +0800</pubDate><description><![CDATA[initializer_list用于初始化一个int类型的列表，(cout ]]></description><category></category></item><item><title><![CDATA[C++11中引入的thread]]></title><link>https://blog.csdn.net/hn_tzy/article/details/142444320</link><guid>https://blog.csdn.net/hn_tzy/article/details/142444320</guid><author>hn_tzy</author><pubDate>Sun, 22 Sep 2024 21:39:25 +0800</pubDate><description><![CDATA[C++11 通过 std::thread 和其他相关的类和函数（如 std::mutex、std::lock_guard、std::condition_variable 和 thread_local）为多线程编程提供了强大的支持。std::thread 是一个表示执行线程的类，它提供了创建和管理线程的基本功能。每个 std::thread 对象都与一个执行线程相关联。当 std::thread 对象被创建时，它会启动一个新的执行线程，该线程会执行传递给 std::thread 构造函数的函数或可调用对象。]]></description><category></category></item><item><title><![CDATA[C++11中的模板别名]]></title><link>https://blog.csdn.net/hn_tzy/article/details/142423854</link><guid>https://blog.csdn.net/hn_tzy/article/details/142423854</guid><author>hn_tzy</author><pubDate>Sat, 21 Sep 2024 20:50:22 +0800</pubDate><description><![CDATA[模板别名允许程序员以更简洁、更具可读性的方式引用复杂的模板类型，尤其是在涉及模板元编程或高度泛型的代码库时。模板别名可以通过 using 关键字来声明。这里，AliasName 是你选择的别名，TypeOrTemplateName 是你想要引用的模板类型或模板名称，而 Args... 是模板参数，可以是零个或多个。总的来说，C++11中的模板别名是一种强大的特性，它使得模板类型的引用更加简洁和灵活，是泛型编程和模板元编程中不可或缺的工具。]]></description><category></category></item><item><title><![CDATA[C++11中的array类型]]></title><link>https://blog.csdn.net/hn_tzy/article/details/142350946</link><guid>https://blog.csdn.net/hn_tzy/article/details/142350946</guid><author>hn_tzy</author><pubDate>Thu, 19 Sep 2024 09:23:51 +0800</pubDate><description><![CDATA[C++11标准中引入的std::array是一个固定大小的容器，它封装了C风格的数组，同时提供了更多的功能和类型安全。std::array定义在头文件<array>中，它是一个模板类，模板参数包括存储元素的类型和数组的大小。与std::vector相比，std::array的大小在编译时就已确定，并且不支持动态调整大小。std::array提供了一系列成员函数，比如size()来获取数组的大小，begin()和end()来获取指向数组首元素和尾元素之后位置的迭代器等。的方式来处理固定大小的数组。]]></description><category></category></item><item><title><![CDATA[C++11中的统一初始化列表]]></title><link>https://blog.csdn.net/hn_tzy/article/details/142342852</link><guid>https://blog.csdn.net/hn_tzy/article/details/142342852</guid><author>hn_tzy</author><pubDate>Wed, 18 Sep 2024 20:34:51 +0800</pubDate><description><![CDATA[C++11 引入了统一初始化列表（Uniform Initialization List），也被称为列表初始化（List Initialization）或大括号初始化（Brace Initialization），它为 C++ 中的对象初始化提供了一种更加通用和清晰的方式。总之，C++11 中的统一初始化列表为 C++ 编程带来了很多便利和优势，它使得代码更加清晰、类型更加安全，并且支持更加灵活的初始化方式。：在模板编程中，统一初始化列表可以确保类型安全，因为编译器可以更准确地推断出类型。]]></description><category></category></item><item><title><![CDATA[禁用win10的自动更新功能]]></title><link>https://blog.csdn.net/hn_tzy/article/details/142290260</link><guid>https://blog.csdn.net/hn_tzy/article/details/142290260</guid><author>hn_tzy</author><pubDate>Sun, 15 Sep 2024 22:46:00 +0800</pubDate><description><![CDATA[开始->运行（win + r）->gpedit.msc->计算机配置->管理模板->windows组件->windows更新->①配置自动更新（禁用）、②删除使用所有windows更新功能的访问权限（启用）开始->运行（win + r）->taskschd.msc->Microsoft->Windows->WindowsUpdate->Scheduled Start（禁用）开始->设置（win + i）->更新和安全->高级选项->暂停更新（只能暂停35天）]]></description><category></category></item><item><title><![CDATA[C++11中新引入的enum类型]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141969497</link><guid>https://blog.csdn.net/hn_tzy/article/details/141969497</guid><author>hn_tzy</author><pubDate>Fri, 06 Sep 2024 21:39:36 +0800</pubDate><description><![CDATA[在C++11中，引入了一个新的枚举类型——enum class（或称为作用域枚举类型），它相较于传统的enum类型有几个关键的不同点。enum class提供了更强的类型检查和封装，减少了命名冲突的可能性，并允许更加清晰地表达枚举的意图。enum class是C++11引入的一种新的枚举类型，它通过提供作用域限定、避免隐式类型转换以及允许指定底层类型等方式，改进了传统枚举类型（enum）的使用。此外，传统枚举的作用域是从声明点到声明该枚举的文件末尾，这可能会导致在不同上下文中名称的冲突。]]></description><category></category></item><item><title><![CDATA[C++11中的static_assert运算]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141902765</link><guid>https://blog.csdn.net/hn_tzy/article/details/141902765</guid><author>hn_tzy</author><pubDate>Wed, 04 Sep 2024 20:16:44 +0800</pubDate><description><![CDATA[static_assert 是 C++11 引入的一个非常有用的编译时断言机制，它允许开发者在编译时检查代码中的条件是否满足，如果条件不满足，则编译器会报错，从而阻止编译过程的继续。这种机制在模板元编程、类型安全的检查以及确保代码在编译时满足特定条件等方面非常有用。二、static_assert 的基本语法。2、检查模板参数是否为特定类型。]]></description><category></category></item><item><title><![CDATA[C++11中的constexpr]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141873326</link><guid>https://blog.csdn.net/hn_tzy/article/details/141873326</guid><author>hn_tzy</author><pubDate>Tue, 03 Sep 2024 22:22:38 +0800</pubDate><description><![CDATA[在C++11及以后的版本中，constexpr关键字被引入，用以表示常量表达式（Constant Expression）。常量表达式是值在编译时就能确定，并且在程序运行期间不会改变的表达式。使用constexpr，开发者可以指定函数或变量为编译时常量，这有助于提升程序的性能和可读性。总的来说，constexpr是C++11引入的一个非常有用的特性，它允许开发者编写在编译时就能确定值的代码，从而可能带来性能上的提升和代码上的优化。这意呀着constexpr变量一旦被定义，其值就。constexpr变量。]]></description><category></category></item><item><title><![CDATA[C++11 中的move和forward函数]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141830633</link><guid>https://blog.csdn.net/hn_tzy/article/details/141830633</guid><author>hn_tzy</author><pubDate>Mon, 02 Sep 2024 22:13:41 +0800</pubDate><description><![CDATA[它接受一个参数（通过通用引用，即模板类型参数的右值引用），并返回该参数的右值引用（或对于左值参数，在概念上返回一个左值引用，尽管实际上是通过返回右值引用来模拟的）。总之，std::move 和移动语义是C++中用于优化性能和资源管理的重要工具，通过允许对象在赋值或初始化时转移资源而非复制它们，它们可以减少不必要的资源复制并提高程序效率。但是，实际使用时，我们通常会通过std::forward_as_tuple或直接在模板函数中使用std::forward来利用C++的类型推导特性，使得代码更简洁。]]></description><category></category></item><item><title><![CDATA[C++中的右值引用]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141788652</link><guid>https://blog.csdn.net/hn_tzy/article/details/141788652</guid><author>hn_tzy</author><pubDate>Sun, 01 Sep 2024 20:03:40 +0800</pubDate><description><![CDATA[C++11引入了许多新特性，其中右值引用（Rvalue References）是一个非常重要的概念，它极大地增强了C++处理临时对象和移动语义的能力。右值引用通过类型后加&&来标识，它允许我们区分对象的值类别（左值或右值），进而可以编写更灵活、效率更高的代码。通过decltype可以获取表达式的类型，并使用std::is_lvalue_reference和std::is_rvalue_reference来检查这个类型是否是左值引用或右值引用。不过，它们的使用场景暗示了表达式的预期角色（作为右值传递）。]]></description><category></category></item><item><title><![CDATA[C++11中的nullptr]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141758865</link><guid>https://blog.csdn.net/hn_tzy/article/details/141758865</guid><author>hn_tzy</author><pubDate>Sat, 31 Aug 2024 21:21:30 +0800</pubDate><description><![CDATA[NULL 通常是宏定义，其值在 C 中通常定义为 (void*)0，在 C++ 中可能定义为 0 或 (void*)0，这取决于编译器和平台。nullptr 可以与 C++ 标准库中的智能指针（如 std::unique_ptr 和 std::shared_ptr）一起使用，以表示空智能指针。然而，在这些情况下，通常不需要显式地比较智能指针是否为 nullptr，因为智能指针提供了自己的空状态检查方法（如 unique_ptr::operator bool()）。二、nullptr的优势。]]></description><category></category></item><item><title><![CDATA[C++11中的lambda匿名函数]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141725922</link><guid>https://blog.csdn.net/hn_tzy/article/details/141725922</guid><author>hn_tzy</author><pubDate>Fri, 30 Aug 2024 21:57:00 +0800</pubDate><description><![CDATA[从输出的地址可以知道，lambda函数内的变量x与函数外的变量x不是同一个变量，只是用外部x变量的值初始化了函数内的x变量（相当于传值的形参）。x以引用传递，y以值传递，所以在lambda函数内修改的x是函数外的x，而y则是lambda函数内的y，与函数外的y不是同一个变量。同时增强了函数式编程的能力。捕获的变量（如果是引用捕获）在lambda函数体之外的生命周期结束时，引用可能变为悬空引用，使用时需要特别注意。从输出的地址可以知道，lambda函数内的变量x与函数外的变量x是同一个变量（地址相同）。]]></description><category></category></item><item><title><![CDATA[C++11中新增的for功能]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141689975</link><guid>https://blog.csdn.net/hn_tzy/article/details/141689975</guid><author>hn_tzy</author><pubDate>Thu, 29 Aug 2024 22:38:37 +0800</pubDate><description><![CDATA[C++11中新增的for循环功能，通常被称为范围基于的for循环（Range-based for loop），它是一种简化的for循环语法，用于遍历容器（如数组、std::vector、std::list等）或其他序列中的所有元素。总的来说，C++11中的范围基于的for循环是一个强大且方便的特性，它极大地简化了遍历容器和序列的代码编写。collection：可以迭代的集合类型，如数组，及STL中的大部分容器（stack和queue不可以）。datatype：表示某一数据类型，常使用auto自动推断。]]></description><category></category></item><item><title><![CDATA[C++11中的decltype关键字]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141650092</link><guid>https://blog.csdn.net/hn_tzy/article/details/141650092</guid><author>hn_tzy</author><pubDate>Wed, 28 Aug 2024 21:24:37 +0800</pubDate><description><![CDATA[注意：在上面例子中的 auto&& iterator ，虽然 decltype 可以推导出 iterator 的类型（包括引用类型），但在这个特定的上下文中，使用 auto&& 主要是为了转发引用（也称为通用引用），而不是为了捕获迭代器的引用类型。在以上这个例子中，getElement 函数使用了 decltype(c[i]) 来推导其返回类型，这确保了函数能够返回与容器中元素相同的类型。在模板编程中，经常需要根据模板参数的类型来推导函数的返回类型。1. 模板函数返回类型推导。，只是用来查询其类型。]]></description><category></category></item><item><title><![CDATA[C++11更新的特性]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141612087</link><guid>https://blog.csdn.net/hn_tzy/article/details/141612087</guid><author>hn_tzy</author><pubDate>Tue, 27 Aug 2024 21:34:17 +0800</pubDate><description><![CDATA[一、auto关键字

二、decltype关键字

三、for迭代循环

四、lambda匿名函数

五、智能指针: shared_ptr、unique_ptr、weak_ptr

六、右值引用&amp;&amp;

七、移动语义：move, forward

八、空指针常量：nullptr

九、常量表达式关键字：constexpr

十、静态断言：static_assert

十一、类枚举：enum class

十二、统一初始化列表：initiallize_list: {}

十三、堆数组：arra]]></description><category></category></item><item><title><![CDATA[C++11中的auto关键字]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141612201</link><guid>https://blog.csdn.net/hn_tzy/article/details/141612201</guid><author>hn_tzy</author><pubDate>Tue, 27 Aug 2024 21:33:21 +0800</pubDate><description><![CDATA[auto不能用于函数声明中代替返回类型，但在C++14及更高版本中，你可以使用auto在函数声明中的尾置返回类型（trailing return type）来指示函数的返回类型，但这种情况下auto不是用来推导局部变量或函数参数的类型，而是用于指定函数的返回类型依赖于其参数的类型或函数体内的其他逻辑。虽然auto可以推导出指针和引用的类型，但对于复杂的指针和引用类型（如多层指针、指向数组的指针等），auto的使用可能会让代码可读性变差。使用auto可以自动推导迭代器的类型，使代码更简洁。]]></description><category></category></item><item><title><![CDATA[C++中的智能指针介绍及使用]]></title><link>https://blog.csdn.net/hn_tzy/article/details/141573013</link><guid>https://blog.csdn.net/hn_tzy/article/details/141573013</guid><author>hn_tzy</author><pubDate>Mon, 26 Aug 2024 21:30:28 +0800</pubDate><description><![CDATA[在这个示例中，A类持有一个指向B的std::shared_ptr，而B类持有一个指向A的std::weak_ptr。与 std::unique_ptr 不同，std::shared_ptr 允许多个 shared_ptr 实例共享对同一对象的所有权。std::weak_ptr 通常是通过一个 std::shared_ptr 来创建的，这样它就指向了由 std::shared_ptr 管理的同一个对象。与 std::unique_ptr 不同，std::shared_ptr 支持复制操作，这会增加引用计数。]]></description><category></category></item></channel></rss>