本科教育忽略的黄金C++
文章平均质量分 58
Silver Gamer
游戏引擎研发工程师;迁移学习学习域自适应的前研究者。
展开
-
本科教育忽略的黄金C++<前言>
本栏目相关的文章由博主学习所记的重点知识与感悟的集合,与CSDN诸多程序员初学入门者共勉。 之所以进行相关的学习,是因为C++作为一门古典优雅的程序语言,大学本科的教育却忽略了大半的C++精华语句。中国大学千校一面,楼主985的学校对C+的教育仍令人不甚满意。大学对于C++的学习仅仅涉及皮毛,就匆匆节课,真是令人非常痛心。 参考C++Premier11,本科教育对于C++的教授止步于第一部分原创 2016-02-15 11:53:32 · 327 阅读 · 1 评论 -
蓝桥杯模拟赛 猜算式
第一次参加比赛,感觉之前学的好多东西都不知道怎么用,感觉准备很不充分。但是我还是想去拼一下,大不了明年接着刷,保研保本校跟着院长混。废话不说,直接发出代码。暴力破解,其中代码块复制粘贴了很多,很容易的思路。通俗易懂。 由于我之前做过不少工程项目,我非常不习惯竞赛当中毫无意义的变量,这玩意遇到难题给你代码你都看不懂。非常爆炸。但也是我修为尚浅,继续努力吧。和CSDN诸君共勉。#include <io原创 2017-03-24 15:32:50 · 641 阅读 · 0 评论 -
本科教育忽略的黄金C++<7> 无序容器
新标准定义了4个无序关联容器,这些容器不是使用比较运算符来组织元素,而是使用哈希函数和关键字类型的==运算符。在关键字类型的元素没有明显的序关系情况下,无序容器是非常有用的。 哈希函数百科介绍1、使用无序容器 无序容器提供了与有序容器相同的操作。这意味着我们在map和set操作也能用于unordered_map和unordered _set。类似的,无需容器也有允许重复关键字的版本。示例程序:原创 2016-02-26 20:16:49 · 493 阅读 · 0 评论 -
本科教育忽略的黄金C++<6> 关联容器
概述 关联容器支持高效的关键字查找和访问。两个主要的关联容器类型是map和set。 map:是一些关键字-值对:关键字起到索引的作用,值则表示与索引相关联的数据。 set:每个元素只包含一个关键字。set支持高效率的关键字查询操作。检查一个给定关键字是否在set中。 标准库提供八个关联容器,这8个容器间的不同体现在三个维度上: (1)set或者map (2)或者要求不重复的关键字,或者允原创 2016-02-26 13:24:49 · 338 阅读 · 0 评论 -
本科教育忽略的黄金C++<5> 泛型算法-特定容器算法
本篇文章弥补前两篇没有提到的容器算法。 list和forward_list定义了几个成员函数形式的算法。链表版本的算法。 对于list和forward_list,应该优先使用成员函数版本的算法而不是通用算法。lst.merge(lst2);//将来自于lst2的元素合并入lst。lst和lst2都必须是有序的。元素将从lst2中删除。在合并之后,lst2变成空。使用<运算符。lst.merge原创 2016-02-25 14:46:49 · 347 阅读 · 0 评论 -
本科教育忽略的黄金C++<4> 泛型算法-定制操作
很多算法都会比较输入序列中的元素,默认情况下,这类算法使用元素类型的==或者<运算符来完成比较。标准库为这些算法定义了额外的版本,允许我们提供自己定义的操作来完成默认运算符。1、向算法传递函数 谓词:是一个可以调用的表达式,其返回结果是一个能用作条件的值。标准库算法所使用的谓词分为两类:一元谓词(他们只能够接受单一参数)二元谓词(着他们有两个参数)。接受谓词参数的算法对输入序列中的元素调用谓词。原创 2016-02-25 14:13:58 · 398 阅读 · 0 评论 -
本科教育忽略的黄金C++<3> 泛型算法
标准库容器定义的操作合集非常小。标准库并未给每个容器添加大量功能,而是提供一组算法。这些算法的大多数都独立于任何特定的容器。这些算法是通用的。(generic,泛型):他们可以用于不同类型的容器和不同类型的元素。泛型算法结构 每个算法都会对它的每个迭代器参数指明必须提供哪类迭代器。迭代器是按照提供的操作来分类的,而这种分类形成了一种层次。除了输出迭代器之外,一个高层类别的迭代器支持低层次类别的迭代原创 2016-02-22 13:17:11 · 317 阅读 · 0 评论 -
本科教育忽略的黄金C++<2> 顺序容器
顺序容器:为程序员提供了控制元素存储和访问顺序的能力。1、顺序容器概述容器以下方面都有不同的性能折中: 向容器中添加和删除元素的代价。 非顺序访问容器中元素的代价。vector:可变大小数组。在尾部之外的位置插入或删除元素效率低下。 deque:双端队列,支持快速随机访问。头尾位置插入删除速度很快。 list:双向链表,任何位置删除插入都很快。 for_ward:但向链表,只支持单向顺序访原创 2016-02-18 19:36:39 · 345 阅读 · 0 评论 -
本科教育忽略的黄金C++<8> 动态内存
<开题> 本科教育以及上述我撰写的文章中,C++程序所使用的对象都有着严格定义的生存期。全局对象在程序启动时分配,在程序结束时销毁。局部自动对象,我们进入其定义所在程序块时被创建,离开这个程序块的时候被销毁。局部static对象在第一次使用前分配,在程序结束的时候销毁。本章对动态内存进行探索。也是我进入大二下学期上课之前写的本栏目最后一篇本科教育忽略的黄金C++文章,作为本栏目结束的一章。本人弥补原创 2016-02-27 15:56:11 · 299 阅读 · 0 评论 -
本科教育忽略的黄金C++<1> IO类
本章节属于C++标准库内容 C++语言不直接处理输入输出,而是通过一族定义在标准库中的类型来处理IO。这些类型支持: 从设备读取数据、向设备写入数据的IO操作,设备可以是文件、控制台窗口。相关的IO库设施 istream(输入流)类型,提供输入操作。 ostream(输出流)类型,提供输出操作。 cin,一个istream对象,从标准输入读取数据。 cout,一个ostream对象,从标原创 2016-02-15 15:23:38 · 429 阅读 · 0 评论 -
<OpenCV1> 简单滤波器+波纹函数
#include <iostream>#include <opencv2/opencv.hpp>using namespace std;using namespace cv;//该函数目标是让目标图像锐化void Sharpen(const Mat &image, Mat& result){ //主要是访问目标像素周围的函数 //原理是拉普拉斯算子 //也可以创建一个原创 2017-04-19 16:59:18 · 891 阅读 · 0 评论