C/C++
文章平均质量分 69
Linear_Luo
平心静气却不失激情,仰望星空仍需奋力搏击
展开
-
cin/getline/gets
cin是C++编程语言中的标准输入流对象,即istream类的对象。cin主 要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,cout是流的对象,即ostream类的对象,cerr是标准错误输出流的对象, 也是ostream 类的对象。这里的标准输出指的是终端键盘,标准错误输出指的是终端的屏幕。在理解cin功能时,不得不提标准输 入缓冲区。当我们从键盘输入字符串的时候需要敲一下回车键才能够将这个字符串送入到缓冲区中,那么敲入的这个回车键(\r)会被转换为一个换行符\n,这 个换行符\n原创 2016-08-25 22:39:27 · 1401 阅读 · 0 评论 -
纯虚函数和虚函数的区别
首先:强调一个概念 定义一个函数为虚函数,不代表函数为不被实现的函数。 定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。 定义一个函数为纯虚函数,才代表函数没有被实现。 定义纯虚函数是为了实现一个接口,起到一个规范的作用,规范继承这个类的程序员必须实现这个函数。简介假设我们有下面的类层次:class A{public: virtual void foo() {转载 2016-09-28 23:43:07 · 686 阅读 · 0 评论 -
C++虚函数与纯虚函数的区别
今天在做一道面试题的时候遇到一个纯虚函数的概念,就翻了下书,查资料,对比下虚函数,现在整理一下和大家分享: 什么是虚函数? 那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异而采用不同的策略。虚函数声明如下:virtual ReturnT转载 2016-09-28 23:47:41 · 661 阅读 · 0 评论 -
#include 理解与思考
关于#include的用法和作用网上大致有如下说法,其实大致思想是相同的:#include 就是复制粘贴xxx到这个位置C++ include本质上就是插入替换语法上,扩展名并没有什么特殊的地方,它只是文件名字符串的一部分,并不具有什么特殊的地位。不管你include啥扩展名都可以,你就是#include < a.txt > 都可以。不过习惯上cpp一般是做函数体实现的,编译的时候每个cpp单原创 2016-09-29 00:22:37 · 1317 阅读 · 0 评论 -
加快C++代码的编译速度方法
C++代码一直以其运行时的高性能高调面对世人, 但是说起编译速度,却只有低调的份了。比如我现在工作的源代码,哪怕使用Incredibuild调动近百台机子,一个完整的build也需要四个小时,恐怖!!!虽然平时开发一般不需要在本地做完整的build,但编译几个相关的工程就够你等上好一段时间的了(老外管这个叫monkey around,相当形象)。想想若干年在一台单核2.8GHZ上工作时的场景 -转载 2016-09-29 10:09:03 · 11938 阅读 · 1 评论 -
THE EVILS OF UNITY BUILDS
Unity builds. I don’t like them.Of all the tools at your disposal to make a build faster, this is the worst. And it’s not just the “hey let’s #include .cpp files” weirdness, but the way that it can转载 2016-09-29 10:13:38 · 831 阅读 · 0 评论 -
union理解与妙用
最近在看PCL中关于自定义PointT类型的文档,发现其中广泛使用了union,以前学习的时候用不到这个,也就没有留心,借此机会学习下union的使用方法,理解下union的本质。一 struct和union内存结构我们先来简单看下struct的内存结构,如下定义一个结构体:struct student{ char mark; long num; float score;原创 2016-10-02 12:57:44 · 4087 阅读 · 0 评论 -
typedef typename 理解
typedef和typename分开的时候,大家基本没什么问题的,但是当二者连起来用的时候,就有点迷糊了。下面这篇博文的讲解我感觉讲得蛮好,就mark一下了===========C++ typedef typename 作用C++的一些语法让人看着费解,其中就有:typedef typename std::vector<T>::size_type size_type;详见《C++ Primer》(第转载 2016-10-07 10:37:45 · 1067 阅读 · 0 评论