C/C++
文章平均质量分 53
小灰兔呼噜噜
每天多学习一点,生活更多彩一些
展开
-
第12章 类 —— 第3节 类的作用域及名字查找
关于C++的几篇博客,参考人民邮电出版社的《C++ Primer 中文版》一书。第三节 类的作用域及名字查找关于类的作用域和名字查找,我们先给出两个结论:1、类定义实际上是在两个阶段中处理:首先,编译类的成员声明;其次,只有在成员声明出现以后,才编译它们的定义本身。2、无论是声明还是定义,查找出现的名字时,都遵循由内而外的查找准则:首先,检查成员函数局部作用域中原创 2015-03-26 11:07:25 · 514 阅读 · 0 评论 -
Struct 和 Union区别
转自:http://blog.csdn.net/firefly_2002/article/details/7954458一、Struct 和 Union有下列区别:1.在存储多个成员信息时,编译器会自动给struct第个成员分配存储空间,struct 可以存储多个成员信息,而Union每个成员会用同一个存储空间,只能存储最后一个成员的信息。2.都是由多个不同的数据类型成员组成,但在任何同一时刻,U...转载 2018-04-12 20:47:55 · 311 阅读 · 1 评论 -
linux共享动态库中同名对象重复析构-两次析构或多次析构引起的double free解决办法
原文链接:http://chengxu.org/p/541.htmlLinux 平台下的共享动态库,一般都是通过选项“-fPIC”编译出来。有些应用程序需要链接多个共享库,此时如果在这些共享库中存在相同作用域范围的同名静态成员变量,那么当程序访问完静态成员变量结束析构时,由于内存的 double free 会导致程序 core dump;该问题是由于 Linux 编译器的缺陷造成的,本文就此问题进...转载 2018-02-22 14:01:27 · 2259 阅读 · 2 评论 -
图形生成算法:多边形的扫描转换与区域填充算法
原博文地址:http://blog.csdn.net/xiaowei_cqu/article/details/7693985多边形扫描线算法是针对计算机中多边形的显示。多边形三条或三条以上的线段首位顺次连接所组成的封闭图形,有凸多边形(任意两顶点间的连线均在多边形内)和凹多边形(任意两顶点间的连线有不在多边形内的部分)。多边形在计算机中有顶点表示和点阵表转载 2018-01-18 17:18:06 · 4853 阅读 · 0 评论 -
pthread使用
pthread_tpthread_t用于表示Thread ID,具体内容根据实现的不同而不同,有可能是一个Structure,因此不能将其看作为整数pthread_equal函数用于比较两个pthread_t是否相等int pthread_equal(pthread_t tid1, pthread_t tid2)pthread_createint pthread_create(原创 2017-12-19 17:51:17 · 681 阅读 · 0 评论 -
C++链接错误“对函数或变量未定义的引用”解决办法
总结一下C++链接错误“对函数或变量未定义的引用”解决办法:1、函数或变量所在的库,没有添加到link_directories,需要在CMakeLists.txt里面添加2、模板函数或者模板类数据没有实例化,也可能导致这个问题,需要指定模板,对模板函数或模板类做实例化3、src子文件夹下的文件需要在CMakeLists.txt里面include,也就是说有可能executable文原创 2015-08-17 21:40:18 · 39920 阅读 · 1 评论 -
C++随笔 —— std::setprecision与showpoint和ios::fixed的配合使用
今天在写代码的时候发现了bug,而且是非常奇怪的bug。因为float的A 在cout以后显示的值明明是等于B的,可计算机判断二者却是A<B纠结了半天也没弄明白,为了搞清楚这是怎么回事,问了同学以后大概知道是cout precision的问题,cout 打印出来的值并不完全等于它的实际值。事实表明的确是这样的,A = 50.4999994,B = 50.5,自然A<B,而打印 A 的语句如转载 2015-05-29 19:23:06 · 6467 阅读 · 1 评论 -
C++ 关于声明,定义,类的定义,头文件作用,防止头文件在同一个编译单元重复引用,不具名空间
1. 编译单元,一个.cc,或.cpp作为一个编译单元.生成.o2. 普通数据类型的定义,声明,函数的定义声明(类函数是一样的)extern int x; //变量是声明,并未实际分配地址,未产生实际目标代码 void print(); // 函数声明, 未产生实际目标代码 如int x; int x = 3 ; void print() {};转载 2015-06-18 16:41:46 · 653 阅读 · 0 评论 -
OpenMP并行程序设计——for循环并行化详解
转载请声明出处http://blog.csdn.net/zhongkejingwang/article/details/40018735 在C/C++中使用OpenMP优化代码方便又简单,代码中需要并行处理的往往是一些比较耗时的for循环,所以重点介绍一下OpenMP中for循环的应用。个人感觉只要掌握了文中讲的这些就足够了,如果想要学习OpenMP可以到网上查查资料。 工欲善转载 2015-04-15 20:22:26 · 1855 阅读 · 0 评论 -
第十二章 类 —— 第二节 隐含的this指针和mutable可变数据成员
第十二章 类关于C++的几篇博客,参考人民邮电出版社的《C++ Primer 中文版》一书。本章节介绍类的隐含this指针和mutable可变数据成员。第二节 隐含的this指针和mutable可变数据成员类的成员函数都具有一个附加的隐含形参,就是this指针,它指向所在类对象。首先上个例子,然后根据例子了解this指针。 一、必须用this原创 2015-03-18 17:06:34 · 675 阅读 · 0 评论 -
C/C++随机数生成
原帖地址请戳这里C/C++怎样产生随机数:这里要用到的是rand()函数, srand()函数,C语言/C++里没有自带的random(int number)函数。(1) 如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间。RAND_MAX定义在stdlib.h, 其值为2147483647。转载 2015-03-24 14:55:15 · 1296 阅读 · 0 评论 -
第十二章 类 —— 第一节 类的基本组成
关于C++的几篇博客,参考人民邮电出版社的《C++ Primer 中文版》一书。本章着重介绍有关类的基本知识。第十二章 类C++用类来定义自己的抽象数据类型。之所以有必要存在类的概念,是因为,数据抽象既能够隐藏对象的内部表示,同时仍然允许执行对象的公有(public)操作。这种方式更接近人对事物的认知。原创 2015-03-18 10:34:24 · 867 阅读 · 0 评论 -
第三章 标准库string、vector、bitset类型 —— 第三节 bitset类
第三章 标准库string、vector、bitset类型关于C++的几篇博客,参考人民邮电出版社的《C++ Primer 中文版》一书。本章着重介绍标准库中的string、vector、bitset类。第三节 bitset类bitset是标准库定义的一个表示位集的类。使用该类,需要引用头文件:#include using std::bitset;原创 2015-03-17 20:23:49 · 613 阅读 · 0 评论 -
makefile的写法及语法
0 Makefile概述 -------------------------------------------------------------------------------- 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要转载 2015-03-10 10:57:03 · 633 阅读 · 0 评论 -
第二章-变量和基本类型1
第二章 变量和基本类型2.1 基本内置类型 && 2.2 字面值常量c++的基本内置类型包括:void类型、布尔值、单个字符、整型、浮点型(5种)。其中:void通常作为无返回值的函数的返回值类型。布尔值bool,可以为其赋任何值,0即false,非0即true。单个字符即c语言中的字符常量,unsigned char范围为0~255。整型:默认为signe原创 2015-03-04 15:12:55 · 421 阅读 · 0 评论 -
第三章 标准库string、vector、bitset类型 —— 第二节 vector类及其迭代器
第三章 标准库string、vector、bitset类型关于C++的几篇博客,参考人民邮电出版社的《C++ Primer 中文版》一书。本章着重介绍标准库中的string、vector、bitset类。第二节 标准库vector类及其迭代器一、vector基本概念1、vector是一种容器,是C++容器的一种,是同一种类型对象的集合。2、vector是一个原创 2015-03-17 17:24:49 · 610 阅读 · 0 评论 -
第三章 标准库string、vector、bitset类型 —— 第一节 标准库string类
第三章 标准库类型关于C++的几篇博客,参考人民邮电出版社的《C++ Primer 中文版》一书。本章着重介绍标准库中的string、vector、bitset类。第一节 标准库string类一、string对象的初始化方式string对象的初始化方式方式含义string s1调用string类的默认构造函数,为空原创 2015-03-17 13:09:15 · 576 阅读 · 0 评论 -
第二章-变量和基本类型2
第二章-变量和基本类型2在上一篇博客《第二章-变量和基本类型》中,我们介绍了C++的内置类型和变量的基本概念,这篇博客则着重介绍几种比较特殊的变量类型,包括const变量、枚举变量enum、类型定义typedef、引用、类类型class。其中,可以这样理解,const、enum、typedef(另外还包括extern)它们都是放在变量类型关键字前面的限定符,对当前基本变量(或用户自定义变量)加原创 2015-03-04 17:40:02 · 595 阅读 · 0 评论 -
C++矩阵库 Eigen 快速入门
原文地址:http://www.cnblogs.com/python27/p/EigenQuickRef.html最近需要用 C++ 做一些数值计算,之前一直采用Matlab 混合编程的方式处理矩阵运算,非常麻烦,直到发现了 Eigen 库,简直相见恨晚,好用哭了。Eigen是一个基于C++模板的线性代数库,直接将库下载后放在项目目录下,然后包含头文件就能使用,非常方便。此外,Eigen的...转载 2019-04-03 14:43:55 · 317 阅读 · 0 评论