编程的时候才懊悔大一为什么不好好学C/C++??
一、指针
1.如果指针指向一个new开辟的一维数组空间,且这个指针用于辨识这个数组,别轻易移动指针。否则找不到最初的位置。可设一个临时指针用于访问。
2.*p=a是指将a的值赋予p所指向的地址空间,与p=&a不一样,后者是将指针指向a所在的地址。*p=a中的p不能是空指针,而应该是指向具体的一个地址。
3.不要习惯性使用p++,在链表中,指针指向下一个地址是p=p->next。
4.不要返回函数内部局部变量的指针,因为在调用函数完毕后,局部变量将会被清空。
二、编程思想/习惯
1.调试特别是碰到循环语句时,要善于添加调试跳入条件。
2.跟踪数组a[10]的每一项,调试时可在监视窗 口中输入”a,10”,可查看其中每一个的值。
3.数据一定要记得初始化,否则很有可能指针和传入的数据的初始化方式不一样,结果会不一样
4.定义各种“点”类的时候,善用继承,即要善于利用C++面向对象编程的思想,否则转换很麻烦。另外在主函数中一个一个删除由New开辟的内存空间是件很愚蠢的事!正确的做法应该是在类内的析构函数进行删除。
5.写程序的时候最好要小心,要及时验证一下函数的准确性,否则函数一多很难发现错误
6.内存写入中断不是写法本身有问题,大部分原因是要删除的变量的逻辑有误。
7.函数参数前加入const是为了避免原始数据在函数体内被意外修改
8. #pragma once同一个文件只编译一次