C语言类一定要有构造函数吗

C语言类一定要有构造函数吗,第1张

构造函数通常用于在实例化对象时自动对内部数据成员初始化,设置初始值、分配内存空间等。
而析构函数则用于删除对象时做收尾工作,比如释放申请的空间等。
要创建一个对象,就得调用构造函数。
要销毁一个对象,就会被迫的调用析构函数。

MyClass a:定义一个对象,调用1次构造函数。

b[2]:定义含有两个元素的数组,实际上定义两个对象,所以调用2次构造函数。

c:定义指向类对象的指针,但没有进行实际的内存分配,所以不调用构造函数。

d:定义指向类对象指针的指针,但没有进行实际的内存分配,所以不调用构造函数。

e[2]:定义含有两个指向类对象的指针的数组,但没有进行实际的内存分配,所以不调用构造函数。

f=new char A:这个语句有问题,f是指向MyClass的对象,你却让它指向char类型的变量。应该改成:f=new MyClass,涉及到内存的分配,调用1次构造函数。

g=new MyClass [2],涉及到内存的分配,调用2次构造函数。

总结:只有涉及到内存分配的时候,才会调用构造函数。普通对象调用一次,对象数组调用N次(该数组含有N个元素)。只定义指针而不给指针赋值,则不涉及内存分配,不调用构造函数。

C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。

C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模而论,大小由之。

C++不仅拥有计算机高效运行的实用性特征,同时还致力于提高大规模程序的编程质量与程序设计语言的问题描述能力。

定义函数
C 语言中的函数定义的一般形式如下:
return_type function_name( parameter list )
{
body of the function
}
在 C 语言中,函数由一个函数头和一个函数主体组成。下面列出一个函数的所有组成部分:
返回类型:一个函数可以返回一个值。return_type 是函数返回的值的数据类型。有些函数执行所需的 *** 作而不返回值,在这种情况下,return_type 是关键字 void。
函数名称:这是函数的实际名称。函数名和参数列表一起构成了函数签名。
参数:参数就像是占位符。当函数被调用时,您向参数传递一个值,这个值被称为实际参数。参数列表包括函数参数的类型、顺序、数量。参数是可选的,也就是说,函数可能不包含参数。
函数主体:函数主体包含一组定义函数执行任务的语句。

#define _CRT_SECURE_NO_WARNINGS

#include <stdioh>

//声明一个求和的函数

int sum(int a, int b);

int main(int argc, char argv[])

{

int x = 5, y = 7;

int s = sum(x, y); //调用函数

printf("x + y = %d \n", s);

system("pause");

return 0;

}

//定义求和函数

int sum(int a, int b)

{

return a + b;

}

更多C语言教程

C语言中表达n次方可以用pow函数。
函数原型:double pow(double x, double y)
功 能:计算x^y的值
返 回 值:计算结果
举例:
double a;a = pow(314, 2); // 计算314的平方,并将结果保存在变量a中
注:使用pow函数必须将头文件#include<mathh>包含进源文件中


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/10328926.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-07
下一篇 2023-05-07

发表评论

登录后才能评论

评论列表(0条)

保存