2 qq 34204094 qq_34204094 于 2016.03.29 16:08 提问

构造函数的作用。。。。。。

构造函数具有初始化内存的作用但是我查资料说它具有开辟内存的作用!就搞不懂 因为在函数执行时已经传入指向实例对象的this指针 那应该表明在调用构造函数以前已经开辟的内存 那么构造函数就没有开辟空间的作用了?

5个回答

as413740611
as413740611   2016.03.29 16:25

构造函数是一个特殊的函数,它的函数名与类名相同,没有返回值,构建对象时会自动调用一次
构造对象时会自动调用一次,目的是为了完成对象被创建过程。
那我们来看看对象被创建的过程:
1.处理成员变量
a.如果成员变量是基本类型, 则使用内存中的值
b.如果成员变量是类类型,创建它
2.调用构造函数

mlw519
mlw519   2016.03.29 16:28

初始化与开辟内存是两个概念。
class A
{
private:
int i;
};

你如果 A a = A();或者 A a = new A();
那么前者在栈开辟空间,后者是在堆开辟空间。
而A()后面的括号就说明调用构造函数,因为“A()”本省就是调用构造函数,调用构造函数就是执行构造函数体的指令。
而构造函数通常是用来初始化对象的

mlw519
mlw519   2016.03.29 16:32

在c++中与构造函数对应的是析构函数, A* a = new A();
delete a;是回收堆区内存,而调用~A()则是做回收前的处理,以防止内存泄露。

lx624909677
lx624909677   Ds   Rxr 2016.03.29 23:25

初始化一些数据用的,想知道有没有给自己开辟空间,你可以创建一个空类,然后sizeof一下就明白了

CSDNXIAOC
CSDNXIAOC   2016.03.30 11:31

构造函数主要用来初始化对象。它又分为静态(static)和实例(instance)构造函数两种类别。大家应该都了解如果来写类的构造函数,这里只说下默认构造函数的作用,以及在类中保留默认构造函数的重要性。实际上,我说错了。正确的说法是:以及在类中保留空参数构造函数的重要性。
我们来写一个类A,代码如下:
public class A
{
   public int......
答案就在这里:构造函数的作用
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C#什么是继承?如何实现继承?
什么是继承?如何实现继承? New 关键字的作用构造函数有无返回值静态构造函数和实例构造函数的区别析构函数的作用 New 关键字的作用构造函数有无返回值静态构造函数和实例构造函数的区别析构函数的作用New 关键字的作用构造函数有无返回值静态构造函数和实例构造函数的区别析构函数的作用
构造函数的作用和特点
1. 构造函数的作用         构造函数主要用来在创建对象时完成对对象属性的一些初始化等操作, 当创建 对象时, 对象会自动调用它的构造函数。一般来说, 构造函数有以下三个方面 的作用:             ■ 给创建的对象建立一个标识符;             ■ 为对象数据成员开辟内存空间;             ■ 完成对象数据成员的初始化。 2. 默认构造函
C#构造函数的作用
构造函数是一种特殊的成员函数,它主要用于为对象分配存储空间,对数据成员进行初始化 (1)构造函数的名字必须与类同名; (2)构造函数没有返回类型,它可以带参数,也可以不带参数; (3)构造函数的主要作用是完成对类的初始化工作; (4)在创建一个类的新对象(使用new关键字)时,系统会自动调用给类的构造函数初始化新对象; C#的类有两种构造函数:实例构造函数和静态构造函数 实例构造函数:
C++中构造函数的作用
构造函数用于解决类中的对象初始化的问题 构造函数是一类特殊的函数,与其他的成员函数不同的是构造函数构造函数不需要用户来调用它,而是建立对象的时候自动的执行#include <iostream> //#include "student.h" //#include <string> //#include <cstring> using namespace std; class Time { publi
Java中构造函数的作用
Java构造函数
简要说明 C#中构造函数的作用
问题 :我们知道构造函数分为 不带参构造函数和带参构造函数,前面一个是默认的构造函数,他们在使用过程中有什么样的区别?各自有什么样的作用? 概要回答: 共同点:都是实例化对象,初始化数据的默认构造是说所有的类都从祖先object那继承了空参的构造方
java中的构造函数有什么用?用它有什么好处?在什么地方用?
构造函数是类的一个特殊方法,这个方法用来生成实例时由系统自动调用,程序员无法直接调用。构造函数方法名同类名相同且参数为空。
构造函数和析构函数的作用是什么?什么时候需要自己定义构造函数和析构函数?
构造函数的作用:用于新建对象的初始化工作。  析构函数的作用:用于在撤销对象前,完成一些清理工作,比如:释放内存等。  每当创建对象时,需要添加初始化代码时,则需要定义自己的构造函数;而对象撤销时,需要自己添加清理工作的代码时,则需要定义自己的析构函数。
PHP中构造函数的意义在哪里?
【转载form phper9,PHP吧】 构造函数的作用是什么?为了让你更好的理解,我举工厂的例子开始讲起: 我们知道,在一个工厂里面,要生产同要求的产品,那么就需要CAD模具。如果引申到我们的PHP中,我们可以理解为类就是CAD模具,决定了产品的形状;而对象就是产品;要求(长度、宽度、高度、半径等等指标)就是类中的类的属性。 当我们要生产产品,首先我们要根据需求方明确该产品有哪些要求,
构造函数的成员初始化列表有什么作用?
内容转载自百度知道!! 以及自己代码验证!! 构造函数初始化列表以一个冒号开始,接着是以逗号分隔的数据成员列表,每个数据成员后面跟一个放在括号中的初始化式。例如: class CExample { public: int a; float b; //构造函数初始化列表 CExample(): a(0),b(8.8) {} //构造函数内部赋值 CExample() { a