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注入发生,我只用过简单拼接字符串的注入及参数化查询,可以说没什么好经验,为避 ...
随机推荐
- 插入UUID,出现Data truncation: Data too long for column 'id' at row 1
ssc.udf.register("getuuid", () => UUID.randomUUID().toString) val stuPCountDF_tmp1=ssc. ...
- 原创:【微信小程序】发送消息模板教程(后台以PHP示例)
1.本教程对外开放,未经博主同意,禁止转载. 2.准备材料:1)公众号|小程序,添加选择的模板消息,2)在设置>开发设置页面,开通消息模板功能:如: 3.因为调用微信发送模板的接口是:https ...
- MyEcplise安装Freemarker插件(支持.ftl文件)
1.下载插件:http://sourceforge.net/projects/freemarker-ide/?source=typ_redirect 2.下载freemarker-2.3.19.jar ...
- python接口自动化(二十七)--html 测试报告——上(详解)
简介 上一篇我们批量执行完用例后,生成的测试报告是文本形式的,不够直观,而且报告一般都是发给leader的,所以最好是直观一目了然,为了更好的展示测试报告,最好是生成 HTML 格式的.unittes ...
- MySQL C 客户端的内存泄漏问题
我们的一个服务器软件在线上环境运行时出现了内存缓慢增长的问题. 用valgrind测试 MySQL的C客户端mysqlclient发现,它在正常的使用中会被valgrind报出存在内存泄漏. 1 正常 ...
- IDEA的maven项目中静态文件编译的路径问题(未测试)
转自:http://www.cnblogs.com/signheart/p/6625126.html IDEA的maven项目中,默认源代码目录下的xml等资源文件并不会在编译的时候一块打包进clas ...
- PL SQL基本内容(原创)
本节介绍PL SQL的基本内容 本节所举示例数据来源oracle用户scott下的emp表和dept表,数据如下: 一.plsql简介: 1.概念:procedural language,过程化sql ...
- linux page buffer cache深入理解
Linux上free命令的输出. 下面是free的运行结果,一共有4行.为了方便说明,我加上了列号.这样可以把free的输出看成一个二维数组FO(Free Output).例如: FO[2][1] = ...
- Linux内核(3) - 分析内核源码如何入手(下)
下面的分析,米卢教练说了,内容不重要,重要的是态度.就像韩局长对待日记的态度那样,严谨而细致. 只要你使用这样的态度开始分析内核,那么无论你选择内核的哪个部分作为切入点,比如USB,比如进程管理,在花 ...
- MyEclipse中常用的快捷键大全
http://www.cnblogs.com/wl0000-03/p/5953989.htmlMyEclipse中常用的快捷键大全 复制当前行到下(上)一行中:ctrl+alt+上下键 自动补全alt ...