C与C++区别之我见

        CC++的最本质的区别是:C是面向过程的编程语言,C++是面向对象的编程语言。更深入的分析两种语言的区别:在C语言中,数据和函数是分开声明的,数据和函数之间不存在直接的关联,函数所处理的数据是不属于函数的外部数据,需要通过特定的方式传递给函数,例如:数据作为函数的参数传递给函数,供函数来处理。而在C++语言中,可以将数据和函数声明为一个抽象数据类型——类(class)。类声明了数据以及对这些数据的操作(函数)。

    例如一个简单的学生信息管理系统中,包含学生的姓名和学号,以及对学生姓名和学号的操作。

        在C语言中,可以进行如此定义。 

	struct Student		                  //Student结构体存储学生的姓名和学号
	{
	    char *szName;		          //定义一个指针变量,指向存储学生姓名的内存
	    int iNumber;
	}
	void Student_Name(Student &s,char *Name)  //设置学生的姓名
	{
	    if(s.szName!=NULL)	                  //如果学生姓名不为空,释放存储学生姓名的内存
	    {
	       free(s.szName);
	       s.szName=NULL;
	    } 
	    s.szName=Name;		          //设置新的姓名
	}
	void Student_Number(Student &s,int Num)   //设置学生的学号
	{
	    s.iNumber=Num;
	}

        在C++语言中,可以将学生的姓名和学号,以及相应的操作封装到类中,可以进行如此定义。      

	class Student		                         //定义学生类
	{
	    public:
	         Student():szName(NULL),iNumber(0){}	 //初始化学生姓名为空
	         ~Student() 
	        {
	            if(szName!=NULL) 		         //如果学生姓名不为空,释放存储学生姓名的内存
	            {
	                Free(szName);
	                szName=NULL;
	            }
	        }
	        void Student_Name(char *szName);	//设置学生的姓名
	        void Student_Number(int Num);        	//设置学生的学号
	    private: 
	        char *szName;
	        int iNumber;
	}


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值