C++类的封装_工程

一个C++工程

main.cpp

#include<stdio.h>

#include"Array.h"

int main()
{
     Array a1(10);

for(int i=0;i<a1.length();i++)
    {
       a1.setdata(i,i);
     }

for (int j=0; j<a1.length(); j++)
    {
       printf("Element %d : %d \n ",j,a1.getdata(j));
    }

a1.destroy();
     printf("press any key to continue...");
     getchar();
     return 0;

}

Array.h

#ifndef _Array_H_
#define _Array_H_

class Array
  { 
      private:
      int mlength;
      int* mspace;
      public:
           Array(int length);              //构造函数
           Array(const Array& obj);   //构造函数(实现复制功能)
           int length();
           void setdata(int index, int value);
           int getdata(int index);
           ~Array();
};

#endif

Array.cpp

#include "Array.h"
       Array::Array(int length)

{
      if(length<0)
      {
         length=0;
       }
       mlength=length;
       mspace=new int[mlength];
     }
       Array::Array(const Array& obj)
      {
         mlength=obj.mlength;
         mspace=new int(mlength);
         for(int i=0; i<mlength;i++)
           {
             mspace[i]=obj.mspace[i];
           }

}

int Array::length()
          {
           return mlength;
          }

void Array::setdata(int index, int value)
            {
               mspace[index]=value;
             }

int Array::getdata(int index)
            {
              return mspace[index];
             }

              Array::~Array()                ///析构函数  销毁对象前  释放内存 自动调用

                {
                  mlength=-1;
                   delete[] mspace;
               }

时间: 2024-10-10 15:37:56

C++类的封装_工程的相关文章

022医疗项目-模块二:药品目录的导入导出-对XSSF导出excel类进行封装

资源全部来源于传智播客. 好的架构师写的程序,就算给刚入门的新手看,新手一看就知道怎么去用.所以我们要对XSSF导出excel类进行封装.这是架构师的工作,但我们也要知道. 我们写一个封装类: 这个类单独有自己的main函数. 我们进入main函数一步一步看: public static void main(String[] args) throws Exception { /** 导出文件存放物理路径 * @param fileWebPath * 导出文件web下载路径 * @param fi

VC++编程之第三课笔记——MFC窗口创建过程以及窗口类的封装

第三课 MFC窗口创建过程以及窗口类的封装 MFC的每一个类都是以C开头的,表明这是一个Class. 工程包含(单文档) 创建工程名为aaa的工程(单文档)时,在类视图中可看见五个类: CAboutDlg CMainFrame CAaaApp CAaaDoc CAaaView 其中: 类CAboutDlg继承自CDialog类,对话框的类 类CMainFrame继承自CFrameWnd类,创建整个程序的框架窗口 类CAaaApp继承自CWinApp类,创建唯一的应用程序对象 类CAaaDoc继承

javascript 总结(常用工具类的封装,转)

javascript 总结(常用工具类的封装) 前言 因为工作中经常用到这些方法,所有便把这些方法进行了总结. JavaScript 1. type 类型判断 isString (o) { //是否字符串 return Object.prototype.toString.call(o).slice(8, -1) === 'String' } isNumber (o) { //是否数字 return Object.prototype.toString.call(o).slice(8, -1) ==

Python 基础之面向对象初识与类的封装

一: 面向对象类的初识#(1) 类的定义#三种方式:#1.class MyClass:    pass #2.推荐class MyClass():    pass #3.class MyClass(object):    pass#(2) 类的实例化class MyClass():    pass#类的实例化,实例化对象obj = MyClass() #obj 就是一个对象#(3)类的基本结构只有成员方法和成员属性对象.属性  对象.方法()#例:class MyClass():    #成员属

GD库的基本信息,图像的旋转、水印、缩略图、验证码,以及图像类的封装

GD库检测 <?php phpinfo(); ?> GD库安装• Windows 使用phpstudy • Linux 编译安装 –with-gd• Linux 编译安装扩展 GD库支持的图像格式 使用 gd_info() 函数 检测服务器支持的图像格式 图像信息处理 <?php //获取图像详细信息 $image = '../image/b.png'; $info = getimagesize($image); var_dump($info); $string = file_get_c

python 类的封装

封装:即在设计类时,刻意的将一些属性和方法隐藏在类的内部,这样将无法直接以"类对象.属性名"(或者"类对象.方法名(参数)")的形式调用这些属性(或方法),而只能用未隐藏的方法间接的操作这些隐藏的属性和方法. 封装机制保证了类内部数据结构的完整性,很好的避免了外部对内部数据的影响,提高了程序的可维护性. 避免用户对类中属性或方法进行不合理的操作. 提供代码的复用性. python类如何进行封装 不同于其他面向对象的编程语言,python类中的变量和函数不是共有的就是

类和封装的概念

类和封装的概念 什么是类? 电脑一般而言是由CPU,内存,主板,键盘和硬盘等部件组合而成. 思考:学习电脑组装需要多少时间?学习电脑组装是都需要学习显示器,键盘,鼠标,主板等部件的设计与制造? 类的封装 我们可以把程序按某种规则分成很多"块",类与类之间可能会有联系,每个类都有一个可变部分(public)和一个不可变部分(private).我们需要把可变部分和不可变部分分离出来,将不可变的部分暴露给其他类,而将可变的部分隐藏起来,以便于随时可以让它修改.这项工作就是封装. 类分为以下两

数据访问类的封装与三大类

数据访问类的封装: 数据访问类分为三大类:连接类,实体类,数据访问类. 1.连接类: public class lianjie { private static string connection="server=.;database=mydb;uid=sa;pwd=789234178"; public static Sqlconnection conn { get { SqlConnection conn=new Sqlconnection(connecction); return

模块的封装之C语言类的封装

[微知识]模块的封装(一):C语言类的封装 是的,你没有看错,我们要讨论的是C语言而不是C++语言中类的封装.在展开知识点之前,我首先要 重申两点: 1.面向对象是一种思想,基本与所用的语言是无关的.当你心怀面向对象时,即使使用QBasic也能写 出符合面向对象思想的代码,更不要说C语言了.举一个反例,很多人初学C++的时候,并没有掌 握面向对象的思想,活生生的把类当结构体来使用的也不在少数吧. 2.面向对象的最基本的出发点是“将数据以及处理数据的方法封装在一起”,至于继承.派生.多态之类 的则