赞
踩
学习一下公司大佬的C++课程,内容如题。
问题1. 不初始化变量可能引起,在release下出现crash或死锁但是在Debug下正常运行,已经其它不可预测的运行结果,很难跟踪,所有变量最好在声明时就初始化,而且变量最好是需要使用时才声明,不要提前声明。
问题2. 程序只在Release下会崩溃或死锁,除了前面提到的变量为初始化,还有可能是因为:
问题3. 像除0这样的操作会产生无意义的值NaN,用无意义的值NaN进行运算,会导致无明确定义的结果,在不同平台或编译器结果不一样,常见的运算结果是NaN、0。调试时可以使用std::isnan来进行捕获。
问题4. C++程序在启动过程中会初始化哪些变量
问题5. 函数内定义的静态变量,是在代码第一次执行时才初始化,并且就构造并初始化一次。虽然说第一次制作时才构造并初始化,该变量的空间占用确是程序执行前就会有了,和全局变量一样,销毁也和全局变量一样。
问题6. 怎么避免复制函数返回的临时变量?
问题7. wchar_t(宽字符) 的空间,Windows相关为2字节,Linux/Unix相关的为4字节,如果要考虑跨平台,不要使用wchar_t,可以使用uft8或utf16这种平台无关的编码
问题8. 代码的提交日志我们应该要写明什么内容?
问题9. 单例模式有哪些写法?他们的问题是什么?
1.默认初始化,但其实内置变量如果没有特别处理,是不会初始化的,仅仅是在内存中占位声明。
unsigned count; // Default-initialized
unsigned count
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。