文章分类 - C/C++
收录管理与C/C++相关的文章
摘要:迭代器 distance 函数模板std::distance的功能是,计算first和last之间,元素的个数 函数模板的内部实现方法: 如果是随机访问迭代器,函数会使用-运算符进行计算。否则,函数使用++运算符进行计算 相当于计算半开区间(first, last]的元素个数 想要得到闭区间的元素个
阅读全文
摘要:某些算数运算可以用于非const指针,使其指向另一个位置 ++ // 自增 += -- -= 这种方法在数组、非类型化数据缓冲区中尤其有用 void*指针以一个char的大小(1B)增减;类型化指针按其指向的类型的大小增减 常量转换为指针 指针存储的地址实际上也是一个整数,因此可以将整数转换为指针类
阅读全文
摘要:枚举器 enumerator:就是枚举定义中的符号常量/命名常量/枚举常量 enum enum是一个自定义数据类型,用以保存整型常量,并且可以通过名字引用这些常量 默认情况下,enum中定义的值的类型是signed int,这意味着枚举量可以是负数 枚举类型主要提供了两个语义: 提供了整型符号常量(
阅读全文
摘要:预编译指令告诉预处理器采取特定动作。常见的功能有 宏替换替换 简化不同执行环境中的更改和编译(条件编译) 条件编译实操 通过条件编译,可以实现简单改变源码,或是编译命令 从而达到只选择编译部分源码的效果,这在debug时很有用处 下面举个例子,根据宏_DEBUG是否定义来判断是否要编译该部分代码 #
阅读全文
摘要:注释规范能够提供结构化的注释信息,看起来更有条理,便于快速获取注释信息 并且VS Code的C/C++.IntelliSense(智能提示)会对注释块中特殊标记进行解释,提供代码提示 C/C++风格的注释块规则如下 注释块要紧贴着代码块,否则智能提示不会生效 /** /**开头 * comments
阅读全文
摘要:参考文档:cppReference 函数对象(Function objects)是为了,可以像使用函数一样使用对象,而设计的 在C++中,这通过在类中定义opretor()成员函数实现 例如 struct myclass{ int operator()(int a) { return a; } }o
阅读全文
摘要:std::find_if 参考文档:cppReference template <class InputIterator, class UnaryPredicate> InputIterator find_if(InputIterator first, InputIterator last, Una
阅读全文
摘要:详细说明了set和multiset中自定义比较器的注意事项
包括比较条件的语义;为何erase无效等问题
阅读全文