0%

2019年3月8日 下午12:53
头文件重复包含和变量重复定义 - 代码面包 - CSDN博客

编译:

  1. C/c++编译的基本单元是.c或.cpp文件
    1. 其实就是一个根据include不断展开的过程
    2. 一个.c或.cpp会生成一个编译结果.o文件
  2. 各个基本单元的编译是相互独立的,#ifndef等条件编译只能保证在一个基本单元(单独的.c或.cpp文件)中头文件不会被重复编译,但是 无法保证两个或者更多基本单元中相同的头文件不会被重复编译

链接:

那么到底怎么样才能避免重复定义呢?

  1. 其实避免重复定义关键是要避免重复编译,防止头文件重复包含是有效避免重复编译的方法
  2. 但是最好的方法还是记住那句话:头文件尽量只有声明,不要有定义。这么做不仅仅可以减弱文件间的编译依存关系,减少编译带来的时间性能消耗,更重要的是可以防止重复定义现象的发生,防止程序崩溃。

类似博文:

  1. error:LNK2005 _main 已经在 *.obj 中定义 - 焱少的博客 - CSDN博客
  2. C/C++ 中头文件相互包含引发的问题 - 海风林影 - CSDN博客
  3. C++ 在.h文件中包含头文件和在.cpp文件中包含头文件有什么区别? - xueruifan的专栏 - CSDN博客

2019年3月8日 下午12:25

wangshubo1989(@wangshubo1989) · 看云
【 分类 】- C++编译问题 - 教兽之家 - CSDN博客
【 分类 】- C++ - 教兽之家 - CSDN博客

输出vector的多种方法整理:涉及到多种C++11以后的高级语法

c++ - How to print out the contents of a vector? - Stack Overflow

vector的五种声明长度方法

vector 声明时长度预设_LEOX-CSDN博客

getline()

C++ getline()函数的用法_C ,getline_小尴尬-CSDN博客

constexpr

https://zh.wikipedia.org/wiki/Constexpr

String reverse

c++ string reverse 用法_C/C++_sentimental_dog的博客-CSDN博客

2019年3月8日 下午2:42

2019年12月23日 下午11:01
以logtamper为例学习:python+c的struct

专题知识点:

专题知识点1:指针专题
专题知识点2:虚函数表(虚函数、析构函数、多态、重写)
专题知识点3:const
专题知识4:函数调用
专题知识5:内存相关
专题知识点6:引用[摘抄]
零散
static,const,consexpr的总结对比
[摘抄]C++多态的实现方式:虚函数表原理浅析

高级语法

C++ template
Effective C++

【程序的正确性】从程序的正确性的角度

C++面试题之浅拷贝和深拷贝的区别

【内存、效率】从内存效率的角度,C++定义各种“虚”、各种规则,其实都是为了优化程序

【工程结构】编译链接与头文件:减少异常

.h头文件 .lib库文件 .dll动态库文件关系重要
如何写好头文件,减少异常危险重要基础概念
模板函数实现必须写在.h中
C++中全局函数的头文件复用问题
编译和链接过程中的重复定义重要
高级语言的编译:链接及装载过程介绍
extern
知识点

工程过程

Linux 下用 Clion 编写及调用共享库的实践

2019年3月8日 下午2:36

关于模板函数声明与定义的问题 - csy的博客 - CSDN博客

  • 总结:其实很明显,明确一点就可以了,即编译器只要遇到使用模板函数时就会实例化相应的函数,若在此编译单元内没有模板函数的定义,它当然不能够实例化成功了。
  • 因此通常情况下模板函数的声明与定义均放在同一文件内,因此这样就保证了在使用模板的地方一定可以实例化成功了。同时,由编译器保证只生成某种类型的一个实例版本,不用担心重复实例化的问题。

2019年3月8日 下午1:24

函数实现不放在头文件的原因,及何时可以放头文件的情况 - 绿色冰点 - 博客园

  1. 从关键字inline、static、对象、virtual的角度去实现实现头文件复用
    1. 并讲清楚了关键字的作用和原因
  2. 编译和链接过程中的重复定义这个是从编译链接的角度去分析头文件复用问题,也给出了不同的方法

2019年3月7日 下午9:51

这同时也意味着这两个必须同时出现,否则两个都别做!

特征坐标归一化:


举3个例子就理解了为啥要+0.5f

  1. 一种情况x在(0,fwidth/2)之中
  2. 一种情况x在(0,fwidth/2)之外
  3. x正好在fwidth_2时,就会出现0_form=0,为了避免0,我们加上一个0.5

焦距归一化:

35mm等效焦距:

2019年3月7日 下午7:10

前提:

  1. N-样本点个数
  2. K-求解模型需要最少的点的个数

过程:

  1. 随机采样K个点
  2. 对该K个点拟合模型 不是全部
  3. 计算其它点到拟合模型的距离小于一定阈值,当作内点,统计内点个数
  4. 重复M次,选择内点数最多的模型
  5. 利用所有的内点重新估计模型(可选)

理解:

  1. 理解:
    1. 通过份数据建立个模型,从中间挑取最好的,并且在这个过程中国还以把外点挑出来
  2. 何时用:
    1. 想排除一些外点
    2. 想在包含外点的数据中建立一个比较好的模型
  3. RANSAC的作用
    1. 部分的数据就可以建立出一个好模型
    2. 并且,可以找出外点