11 2017 档案
为什么size_t重要?
摘要:参见 http://en.cppreference.com/w/cpp/types/size_t size_t其实与uintptr_t一个道理。就是一个东西。指针其实就是寻址,与地址总线位数一致,编译器根据平台决定,从性能和可移植性分析有其由来。 之前在《内存拷贝的注意事项》一文中提到过size_t
阅读全文
图像的遍历
摘要:我们在实际应用中对图像进行的操作,往往并不是将图像作为一个整体进行操作,而是对图像中的所有点或特殊点进行运算,所以遍历图像就显得很重要,如何高效的遍历图像是一个很值得探讨的问题。 一、遍历图像的4种方式:at<typename>(i,j) Mat类提供了一个at的方法用于取得图像上的点,它是一个模板
阅读全文
OpenCV中对Mat里面depth,dims,channels,step,data,elemSize和数据地址计算的理解 (转)
摘要:cv::Matdepth/dims/channels/step/data/elemSizeThe class Mat represents an n-dimensional dense numerical single-channel or multi-channel array. It can b
阅读全文
qt用mingw编译时报错 multiple definition of
摘要:1 2 3 首先,检查自己的程序是否真的有重定义、头文件循环包含等问题。 若确定没有,则是由于方法的实现放在了头文件中,将这些方法的实现转移到对应的cpp文件中。 移动后编译,可能仍然会报错。(╯‵□′)╯︵┻━┻ 这是因为在debug目录下的*.o文件时上次编译时生成的旧文件,需要将这些.o文件全
阅读全文
inline详解
摘要:1. 引入inline关键字的原因 在c/c++中,为了解决一些频繁调用的小函数大量消耗栈空间(栈内存)的问题,特别的引入了inline修饰符,表示为内联函数。 栈空间就是指放置程序的局部数据(也就是函数内数据)的内存空间。 在系统下,栈空间是有限的,假如频繁大量的使用就会造成因栈空间不足而导致程序
阅读全文
C++静态数据成员与静态成员函数
摘要:一般情况下,如果有n个同类的对象,那么每一个对象都分别有自己的数据成员,不同对象的数据成员各自有值,互不相干。但是有时人们希望有某一个或几个数据成员为所有对象所共有,这样可以实现数据共享。可以使用全局变量来达到共享数据的目的。例如在一个程序文件中有多个函数,每一个函数都可以改变全局变量的值,全局变量
阅读全文
OpenCV Mat数据类型及位数总结(转载)
摘要:OpenCV Mat数据类型及位数总结(转载) 前言 opencv中很多数据结构为了达到內存使用的最优化,通常都会用它最小上限的空间来分配变量,有的数据结构也会因为图像文件格式的关系而给予适当的变量,因此需要知道它们声明的空间大小来配置适当的变量。一 般标准的图片,为RGB格式它们的大小为8bits
阅读全文