My CPP Templates
文章平均质量分 75
__基本操作__
整点薯条~♪(´▽`)
展开
-
控制台中,为什么会打印出烫烫烫?--那些中文乱码问题【more cpp-8】
在我们写出BUG并且打印字符串的时候,常常会遇到**控制台中打印出烫烫烫**的情况。这是为什么呢?今天我们来一起探究一下原创 2024-11-10 23:02:23 · 774 阅读 · 1 评论 -
CPP 基于模板的类型相同判断[CPP template-8]
今天的代码是今年早些时候写的,std库中也有类似的方法。这里我们把思路理一下,写一个自己的类型相同判断模板♪(´▽`)原创 2024-08-06 08:41:59 · 526 阅读 · 0 评论 -
类的成员检查问题详解[CPP template-7]
还记得我们在std::declval详解[CPP template-4]这篇文章的结尾提到的那个问题吗?如何做类的成员检查?又怎么把这个检查的流程方便化?(这里我使用的C++17的思路,concept的使用留到以后再讲)原创 2024-08-05 12:26:16 · 298 阅读 · 0 评论 -
CPP模板中的trait思想[CPP template-6]
trait 这个英文翻译成中文,是特征的涵义,我们可以从这里窥见一二它在模板中起什么作用。trait是一种CPP程序设计机制,**是的,它并不是一个具体的函数,或者类什么的**,它是程序专家Nathan提出的一个概念,并且Nathan把它严格化,把这种思想提交给了C++标准委员会(在Nathan的叫法中trait不叫trait,而是叫baggage template)。后来C++程序员们发现,欸,这玩意怪好用,所有trait思想的代码在CPP中很常见。下面我们一起来学习一下原创 2024-08-04 20:22:41 · 420 阅读 · 0 评论 -
std::enable_if 例子和详解[CPP template-5]
为什么要出现std::enable_if。我们已经可以搭建出匹配空间,但是当我们要实现条件编译的时候。就需要一个工具了,你可以把它当作基于SIFNAE的**模板专用的if条件语句**.std库提供的就是std::enable_if。原创 2024-08-03 10:57:38 · 353 阅读 · 0 评论 -
std::declval详解[CPP template-4]
啊呀,总算是把CPP模板入门的基础知识讲完了,也是可以着手写一些有用的东西了(虽然现在可能看上去呆呆的程序)今天介绍的是std::declval 这个模板的源代码比较简单,但是用处还是比较广泛的,是初学者学习模板思想的一个好例子原创 2024-08-02 13:01:00 · 537 阅读 · 0 评论 -
CPP模板元入门,两个关键字[CPP template-3]
本文还是模板元的入门篇,上一篇文章讲了基础的语法(参见我的专栏),这里讲一下模板元中常用的两个关键字,**typeid**和**decltype**。原创 2024-08-02 12:50:15 · 376 阅读 · 0 评论 -
实例和具体 以及模板参数[CPP template-2]
本文主要讨论了CPP中模板的术语和基本语法,为下面的模板的使用打下基础像函数模板一样,类也可以模板化。这是重要的CPP命题。**也是像函数模板一样,模板类的编译器实现称为实例化,模板类的程序员实现称为具体化**。还有一个要提一下的术语就是**模板参数**,就是template中写在里面的东西,显然来看,模板参数是只写在主模板,在主模板中就定义的参数列表,它并不能写在具体化中。原创 2024-07-30 09:30:18 · 372 阅读 · 0 评论 -
通用编程var programing:[CPP template-1]
本文是系列的开始,记录笔者对模板的学习。也有一些值得注意的细节原创 2024-07-29 22:13:39 · 356 阅读 · 0 评论