1. 类中定义的静态变量在编译时没有出错,但是在链接时出现错误,原因是该静态变量没有初始化。

class Obj {

public:

//...

private:

static vector<string> vstr;

};

vector<string> Obj::vstr;

这样在别的地方就可以使用该静态变量了,具体使用方法很简单,只要Obj::vstr 即可。

2. 一个类中声明了一个指针后,要记得初始化时将此指针赋为空值,在使用时先判断此指针是否为空,否则在使用一个未定义的指针时,会有错误出现;另外在重置指针时,不仅要回收new对象,而且最好将指针赋为NULL;

3. 在一个类中malloc或者new出来的空间,只需在此类的析构函数中进行回收,另外,将所使用的容器(vector, list等)清空即可。

4. 使用对象的get方法返回的数据,最好能使用引用返回。下附函数返回说明:

1)主函数main的返回值:这里提及一点,返回0表示程序运行成功。

2)返回非引用类型:函数的返回值用于初始化在跳用函数出创建的临时对象。用函数返回值初始化临时对象与用实参初始化形参的方法是一样 的。如果返回类型不是引用,在调用函数的地方会将函数返回值复制给临时对象。且其返回值既可以是局部对象,也可以是求解表达式的结果。

3)返回引用:当函数返回引用类型时,没有复制返回值。相反,返回的是对象本身。

int &func(int& a)
{ return a;
} int main(int argc , char* args[])
{ int a=0; int b=func(a); printf("&a=0X%08X,&b=%08X\n",&a,&b); }

运行结果:

&a=0X0012FF7C,&b=0012FF78

这里可以看到,返回变量的地址和传入地址是不同的。变量b是main函数中自己的栈中生成的。

int& c=func(a)

那么c就是指向a,

a变化那么c也跟着变化,

在上面b的情况,

是重新分配了一个空间,

因此不会同步变化。

c++的学习笔记之二相关推荐

  1. Programming C# 学习笔记(二) 出发:“Hello World”

    小序:      准备写这章的学习笔记了,啊,Hello World!多么亲切的语句,呵呵,当初学C语言的第一个程序就是输出它, 还记得费了好大劲终于把它输出来时候的那种兴奋感觉,真是让我怀念哦!(然 ...

  2. SVO学习笔记(二)

    SVO学习笔记(二) 这篇文章 稀疏图像对齐 地图点投影(地图与当前帧间的关系) reprojectMap reprojectPoint reprojectCell 特征点对齐中的非线性优化 结尾 这 ...

  3. Python学习笔记(二):标准流与重定向

    Python学习笔记(二):标准流与重定向 - SamWei - 博客园 Python学习笔记(二):标准流与重定向 Posted on 2012-02-19 22:36 SamWei 阅读(176) ...

  4. pytorch学习笔记(二):gradien

    pytorch学习笔记(二):gradient 2017年01月21日 11:15:45 阅读数:17030

  5. opencv学习笔记(二):基于肤色的人手检测

    opencv学习笔记(二):基于肤色的人手检测 原文:http://blog.csdn.net/wzmsltw/article/details/50849810 先写了人手的检测程序,下一步基于检测程 ...

  6. python做直方图-python OpenCV学习笔记实现二维直方图

    本文介绍了python OpenCV学习笔记实现二维直方图,分享给大家,具体如下: 官方文档 – https://docs.opencv.org/3.4.0/dd/d0d/tutorial_py_2d ...

  7. TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅

    TensorFlow学习笔记(二):快速理解Tutorial第一个例子-MNIST机器学习入门 标签: 机器学习SoftmaxTensorFlow教程 2016-08-02 22:12 3729人阅读 ...

  8. 学习笔记(二)——CSS基础

    文章目录 一.什么是CSS 二.CSS基本使用 2.1.行内式(内联样式) 2.2.内部样式 2.3.外部样式 2.3.1.嵌入式 2.3.2.导入式 三.选择器 3.1.基础选择器 3.1.1.标签 ...

  9. OpenCV学习笔记(二十六)——小试SVM算法ml OpenCV学习笔记(二十七)——基于级联分类器的目标检测objdect OpenCV学习笔记(二十八)——光流法对运动目标跟踪Video Ope

    OpenCV学习笔记(二十六)--小试SVM算法ml 总感觉自己停留在码农的初级阶段,要想更上一层,就得静下心来,好好研究一下算法的东西.OpenCV作为一个计算机视觉的开源库,肯定不会只停留在数字图 ...

  10. OpenCV学习笔记(二十一)——绘图函数core OpenCV学习笔记(二十二)——粒子滤波跟踪方法 OpenCV学习笔记(二十三)——OpenCV的GUI之凤凰涅槃Qt OpenCV学习笔记(二十

    OpenCV学习笔记(二十一)--绘图函数core 在图像中,我们经常想要在图像中做一些标识记号,这就需要绘图函数.OpenCV虽然没有太优秀的GUI,但在绘图方面还是做得很完整的.这里就介绍一下相关 ...

最新文章

  1. VC6.0连接数据库,并把大量数据从ACCess转移到SQL sever2008 的问题(亲测可用)
  2. 手机利用python访问电脑文件_黑客教程,一行python命令让手机读取电脑文件!
  3. opencms的主工作区文件研究
  4. ccf报数游戏java_ccf 201712 02 (游戏)
  5. interactive_timeout和wait_timeout之间的区别
  6. ABAP Code Inspector那些隐藏的功能,您都知道吗?
  7. 关于本地共享文件夹会话连接时间
  8. Python+Opencv实现自动化阅卷
  9. strace命令用法
  10. django-redis中redis.conf配置详细说明
  11. 关于BEA-000402和BEA-000438(没有进程来读取写入管道的数据)
  12. iscsiadm及其他磁盘相关命令
  13. 第二篇:稳定性之如何有条不紊地应对风险?
  14. lisp求面与面的差集_Lisp 入门
  15. java环境怎么搭,如何搭建一个完整的Java开发环境
  16. 复杂的指针获取字符串里的内容放入数组
  17. 第五章 Windows基础控件
  18. 使PNG图片在IE浏览器实现透明效果代码
  19. vue json 编辑组件_内置为Vue组件的Visual JSON编辑器
  20. Spring常用注解整理

热门文章

  1. 服务器和数据库基本知识
  2. React之组件小析
  3. 周鸿祎:网络安全面前 没有国家可以袖手旁观
  4. Windows下配置Nginx+php7
  5. 大型网站系统架构分析
  6. Oracle常用数据字典表 Oracle常用数据字典表 查看当前用户的缺省表空间
  7. 不插网线 开机速度加快
  8. VC 在对话框中增加菜单栏
  9. 去重查询表mysql 中数据
  10. JAVA中properties基本用法