上一页 1 ··· 4 5 6 7 8 9 10 下一页
摘要: 标答:全局对象的构造函数。 阅读全文
posted @ 2022-01-11 20:59 Kisen 阅读(90) 评论(0) 推荐(0)
摘要: 简单情况下,打开会失败 复杂情况下,由于文件描述符结构中指针指向的内存被重复释放,而文件指针自身不会改变,因此在释放的间隔过程中有可能会将后来进入这片空间的新数据也释放掉,造成未知错误。 阅读全文
posted @ 2022-01-11 19:37 Kisen 阅读(439) 评论(0) 推荐(0)
摘要: 转义字符 意义 ASCII码值(十进制) \a 响铃(BEL) 007 \b 退格(BS) ,将当前位置移到前一列 008 \f 换页(FF),将当前位置移到下页开头 012 \n 换行(LF) ,将当前位置移到下一行开头 010 \r 回车(CR) ,将当前位置移到本行开头 013 \t 水平制表 阅读全文
posted @ 2022-01-11 18:04 Kisen 阅读(136) 评论(0) 推荐(0)
摘要: 方法一: 1、定义一个指针p; 2、sizeof(p),若结果为4,则为32位系统;若为8,则为64位系统。 方法二(不使用sizeof()): unsigned int c = ~ 0 ; cout << c;//结果为65535就是16位;4294967295就是64位 return 0; 阅读全文
posted @ 2022-01-11 17:35 Kisen 阅读(269) 评论(0) 推荐(0)
摘要: 类型安全是指同一段内存在不同的地方,会被强制要求使用相同的类型来解释(内存中的数据是用类型来解释的)。 简单地说类型安全一定程度等价于内存安全。 Java语言是类型安全的,除非强制类型转换。 C语言不是类型安全的,因为同一段内存可以用不同的数据类型来解释,比如1用int来解释就是1,用boolean 阅读全文
posted @ 2022-01-11 17:32 Kisen 阅读(410) 评论(0) 推荐(0)
摘要: 内存耗尽的两种主流处理方式 一、直接return 适用于只有一处需要释放内存,即整个函数只有一处需要动态分配内存。 二、直接exit(1) 适用于函数多出可能发生内存溢出的情况。 注意设置异常错误处理 一般做法是为new/malloc编写自定义的异常处理函数。 阅读全文
posted @ 2022-01-11 17:22 Kisen 阅读(246) 评论(0) 推荐(0)
摘要: 为何有了malloc()和free()还要有new和delete? 区别其实在标题就已经十分明显了——malloc()和free()是C/C++的标准库中的库函数,用于手动开辟/销毁内存空间;new和delete是C++中新增的关键字,作用与malloc()和free()一致。 虽然作用一致,但是库 阅读全文
posted @ 2022-01-11 17:16 Kisen 阅读(70) 评论(0) 推荐(1)
摘要: 全局变量、局部变量之间的区别?四个维度回答 维度一:时间(生命周期) 从生命周期上讲,全局变量程序运行时创建、程序结束时销毁;普通的局部变量函数调用时创建、函数调用完成后销毁。 静态局部变量与静态全局变量都是静态的,生命周期与全局变量一致。 维度二:空间(作用域) 从作用域上讲,全局变量整个程序的源 阅读全文
posted @ 2022-01-11 17:00 Kisen 阅读(703) 评论(0) 推荐(0)
摘要: C++内联函数 c++内联函数提出的目的是节约栈空间。众所周知函数存放在栈中,而系统内存中栈空间是有限而宝贵的。由于有的时候一些简单的函数可能会大量占用栈空间,因此inline得以出现。 inline函数,即内联函数,本质上是编译器(注意,是编译器认定是否可以认定为内联函数)将inline关键字所限 阅读全文
posted @ 2022-01-11 16:45 Kisen 阅读(73) 评论(0) 推荐(1)
摘要: C++内存分配 静态存储区域 在编译阶段时,全局变量等静态变量就已经在静态存储区域完成初始化了。 栈 一般函数本身以及函数内部所有变量都会在栈上创建。函数执行结束后进行出栈。虽然效率很高但可惜的是内存中栈存储的空间有限。 堆 一般亦称动态内存分配,即在堆上分配内存空间供变量使用。程序员自我管理内存的 阅读全文
posted @ 2022-01-11 15:21 Kisen 阅读(37) 评论(0) 推荐(0)
上一页 1 ··· 4 5 6 7 8 9 10 下一页