c++犯过的错
1、可访问性(是否可用)、可见性(作用域内是否存在)
2、volatile(嵌入式用的多) const
3、友元函数可以访问类的私有函数 目的 工厂方法 全局运算符 如 >> << () ||
4、static const 类定义时即可初始化
5、复制构造函数 赋值运算符 目地 复杂类型、指针类型的复制
6、转换构造函数 一个参数的构造函数
7、explicit 防止隐式类型
8、 const 在函数前则返回值是const的,在函数后,则函数里的值不可变,如果有修改变量,可以在这个变量的声明出加mutable。
9、命名规范
空行 {} 就近原则
分号后可以加空格 二元操作符的空格 前后都加,一元操作符可以不用
拆行时 操作符放在行首 *、&紧靠变量名
10、c++ 用new分配的在堆,其它的在栈
11、c++ 宏用”#”号连接
12、++在后面时返回原时值,循环的表达式里有取余,或类似操作时要注意
13、取余要注意负数问题
14、左值是一个位置,右值是一个值
15、有符号数的右移位 不是可移植的
16、变量名与内存位置之间的关联并不是硬件提供,由编译器实现。硬件仍然通过地址访问内存位置
17、c语言只有传值方式,所以要用指针的指针
18、指针的初始化用&操作符,变量的值就是分配给变量的内存位置所存储的数值
19、访问指针地址所指内容 可以间接访问,或用解引用指针 *
20、segmentation violateion / memory falut 指针未初始化 gpf 一般保护性异常 bus error 总线错误 指针超边界
21、访问内存地址 *(int *)100 = 25 内存100地址处的值设为25
22、状态码和错误码分开
23、逻辑上可以处理的异常用错误码,否则抛出异常
24、初始化的先后顺序
25、stl set 一般用来保存不可变的元素,在vs2010以上版本里 set的iterator都是const的
26、某个数x的后i位 x%(10^i)
27、链式调用时要检查每一项的值是否存在
28、function argument expected 可能是函数名后没见()
29、无符号数减始终是无符号数,用a-b>0 来判断始终为真
30、malformer number near 非英文字符
31、unexpected symbol near “=” 结果是a=b后面一大段空白之后又跟着一个 =b
32、把一行过长的代码切割成多行,方便查错
c++犯过的错的更多相关文章
- 关于在MySql的decimal中犯的一个错-此篇文章目的在于警醒自己
今天在运行一段程序的时候报了Out of range value错误,网上的解释是说这个值与数据库字段类型不匹配,然而程序里面设置的是BigDecimal,数据库设置的是decimal,没有多想就把s ...
- typeof做类型判断时容易犯下的错
学过js同学都知道js的数据类型有 字符串.数字.布尔.Null.Undefined和object(数组.function......) 作为一个初学者我一直认为每个数据类型返回的结果是这样的 typ ...
- c++ 引用犯的一个错
void cal(int * &a) { ................ } int main() { int x=1; int *p=x; cal( &x );//出错 cal( ...
- python -- 犯过的错之变量作用域
1.写代码时发现取得变量值,会被覆盖,改为图二的写法后case_id则不会覆盖. 原因:可以理解为变量是内存中一个对象的“引用”.在函数参数传值时,变量也是内存对象的引用. 当对象为可更改对象时,是引 ...
- Exception 和Error异常大部分人都犯过的错。
先看再点赞,给自己一点思考的时间,如果对自己有帮助,微信搜索[程序职场]关注这个执着的职场程序员. 我有什么:职场规划指导,技能提升方法,讲不完的职场故事,个人成长经验. 1,简介 Exception ...
- Angular2新人常犯的5个错误
看到这儿,我猜你肯定已经看过一些博客.技术大会录像了,现在应该已经准备好踏上angular2这条不归路了吧!那么上路后,哪些东西是我们需要知道的? 下面就是一些新手常见错误汇总,当你要开始自己的ang ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- apache httpd服务器403 forbidden的问题
一.问题描述 在apache2的httpd配置中,很多情况都会出现403. 刚安装好httpd服务,当然是不会有403的问题了.主要是修改了一些配置后出现,问题描述如下: 修改了DocumentRoo ...
- WEB安全:XSS漏洞与SQL注入漏洞介绍及解决方案(转)
对web安全方面的知识非常薄弱,这篇文章把Xss跨站攻击和sql注入的相关知识整理了下,希望大家多多提意见. 对于防止sql注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...
随机推荐
- Linux服务器修改时区时间
时间的一致性很关键,对于日志的分析和程序的对接都至关重要! 01.tzselect 修改时区 可以使用命令 tzselect,修改时区.操作示例: $ tzselect Please identify ...
- Oracle单实例启动多个实例
Oracle多实例运行,单个实例就是一个数据库!,一个数据库对应多个实例是RAC Linux建立oracle的实例步骤: 1.在linux服务器的图形界面下,打开一个终端,输入如下的命令: xhost ...
- FCT需求分析
1. 系统组成 系统从硬件角度看是由芯片.电源,时钟,总线组成, 当中总线分为控制总线和数据总线. 芯片是单个的硬件单元,可实现多种功能.有些功能有性能需求,在计算机系统中大部分功能都须要软件配合. ...
- HDUOJ---1233还是畅通工程
还是畅通工程 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Subm ...
- HDUOJ---------(1045)Fire Net
Fire Net Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total S ...
- oc 中的.m和.mm文件区别
oc 中的.m 这是objective c语言 oc 中的.mm 这是objective c++语言
- OGG_GoldenGate数据迁移三进程Extract / Dump / Relicat(案例)
2014-03-04 Created By BaoXinjian
- DBA_实践指南系列10_Oracle Erp R12诊断功能Diagnostic(案例)
2013-12-10 Created By BaoXinjian Thanks and Regards
- android使用JsonWriter拼json字符串
JsonWriter使用 Example: 拼一个如下的json格式String { [ { "id": 912345678901, ...
- 【转】一个对 Dijkstra 的采访视频
一个对 Dijkstra 的采访视频 (也可以访问 YouTube 或者从源地址下载 MPEG1,300M) 之前在微博上推荐了一个对 Dijkstra 的采访视频,看了两遍之后觉得实在很好,所以再正 ...