网络资源
DNFK
初学C/C++,有不足的还望各位大神指导.
展开
-
Effective C++ 2e 条款7:预先准备好内存不够的情况
条款7:预先准备好内存不够的情况 operator new在无法完成内存分配请求时会抛出异常(以前的做法一般是返回0,一些旧一点的编译器还这么做。你愿意的话也可以把你的编译器设置成这样。关于这个话题我将推迟到本条款的结尾处讨论)。大家都知道,处理内存不够所产生的异常真可以算得上是个道德上的行为,但实际做起来又会象刀架在脖子上那样痛苦。所以,你有时会不去管它,也许一直没去管它。但你心里一定还是深...转载 2019-04-02 16:46:43 · 351 阅读 · 0 评论 -
(转载)传指针和传指针引用的区别/指针和引用的区别(本质)
传指针和传指针引用的区别/指针和引用的区别(本质)转自:http://blog.sina.com.cn/s/blog_673ef8130100imsp.html指针传递参数本质上是值传递的方式,它所传递的是一个地址值。值传递过程中,被调函数的形式参数作为被调函数的局部变量处理,即在栈中开辟了内存空间以存放由主调函数放进来的实参的值,从而成为了实参的一个副本。值传递的特点是被调函数对形...转载 2019-03-22 15:19:16 · 153 阅读 · 0 评论 -
(转载)C++中栈区 堆区 常量区(由一道面试题目而学习)
C++中栈区 堆区 常量区(由一道面试题目而学习)2009-04-28 21:01 #include<iostream.h>void main(){char a[]="abc";栈 char b[]="abc";栈 char* c="abc";abc在常量区,c在栈上。char* d="abc"; 编译器可能会将它与c所指向的"abc"优化成一个地方。cons...转载 2019-03-21 00:01:47 · 151 阅读 · 0 评论 -
Centos7通过yum安装最新MySQL(亲测有效)
一:去官网查看最新安装包https://dev.mysql.com/downloads/repo/yum/二:下载MySQL源安装包wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm安装MySql源yum -y install mysql57-community-release-...转载 2019-03-19 16:58:27 · 5315 阅读 · 0 评论 -
new 和 malloc 的区别
大概整合了下,有以下几个方面:一、属性 new/delete是C++关键字,需要编译器支持。malloc/free是库函数,需要头文件支持。二、参数 使用new操作符申请内存分配时无须指定内存块的大小,编译器会根据类型信息自行计算。而malloc则需要显式地指出所需内存的尺寸。三、返回类型 new操作符内存分配成功时,返回的是对象类型的指...转载 2019-03-03 21:34:35 · 122 阅读 · 0 评论 -
C++ 面向对象基本概念
/* 类和对象 */1. 对象客观世界中任何一个事物都可以看成一个对象(object)。对象可大可小。对象是构成系统的基本单位。任 何 一 个 对 象 都 应 当 具 有 这 两 个 要 素 , 即 属 性 (attribute) 和 行 为(behavior),它能根据外界给的信息进行相应的操作。2. 封装与信息隐蔽可以对一个对象进行封装处理,把它...转载 2019-03-03 18:19:32 · 954 阅读 · 0 评论 -
_Effective_C++_条款四十九:了解new_handler的行为(转载)
转载自https://www.cnblogs.com/jerry19880126/p/3722531.html读书笔记_Effective_C++_条款四十九:了解new_handler的行为本章开始讨论内存分配的一些用法,C/C++内存分配采用new和delete。在new申请内存时,可能会遇到的一种情况就是,内存不够了,这时候会抛出out of memory的异常。有的时候,我们希望能...转载 2019-02-02 16:46:04 · 132 阅读 · 0 评论 -
(转载)Linux下getopt()函数的使用
Linux下getopt()函数的简单使用步入正题:我们的主角----getopt()函数。英雄不问出处,getopt()函数的出处就是unistd.h头文件(哈哈),写代码的时候千万不要忘记把他老人家include上。 再来看一下这家伙的原型(不是六耳猕猴):int getopt(int argc,char * const argv[ ],const char * opt...转载 2018-11-01 20:49:34 · 123 阅读 · 0 评论 -
(转载)C++中基类的析构函数为什么要用virtual虚析构函数
知识背景 要弄明白这个问题,首先要了解下C++中的动态绑定。 关于动态绑定的讲解,请参阅: C++中的动态类型与动态绑定、虚函数、多态实现正题 直接的讲,C++中基类采用virtual虚析构函数是为了防止内存泄漏。具体地说,如果派生类中申请了内存空间,并在其析构函数中对这些内存空间进行释放。假设基类中采用的是非虚析构函...转载 2018-10-29 17:55:56 · 120 阅读 · 0 评论 -
(转)构造函数不能声明为虚函数,析构函数可以声明为虚函数,而且有时是必须声明为虚函数
构造函数不能声明为虚函数,析构函数可以声明为虚函数,而且有时是必须声明为虚函数。不建议在构造函数和析构函数里面调用虚函数。构造函数不能声明为虚函数的原因是:1 构造一个对象的时候,必须知道对象的实际类型,而虚函数行为是在运行期间确定实际类型的。而在构造一个对象时,由于对象还未构造成功。编译器无法知道对象 的实际类型,是该类本身,还是该类的一个派生类,或是更深层次的派生类。无法确定。。。2 ...转载 2019-04-28 20:01:39 · 417 阅读 · 1 评论