#include <iostream.h>

#include <string.h>

//using namespace std;

class A

{

public:

    A();//默认构造函数

    A(char *sName);//构造函数,一个参数

    A(const A &Aobj);//拷贝构造函数

    virtual  ~A();//析构函数,一般可以声明为虚函数

    void sayhello();

    char m_sName[10];

private:

    void saywellcome();

    char m_sPassword[10];

};

int main()

{

    A *obj=new A("loster");//构造函数,返回一个对象的指针

    obj->sayhello();

    

    cout<<obj->m_sName<<" public var"<<endl;//可以访问公共变量

    

    //A *anthorobj=new A(*obj);//拷贝构造函数,拷贝的空间是独立的

    A anthorobj(*obj);//此方式声明不需要delete,作用域为大括号,返回一个对象



    strcpy(anthorobj.m_sName,"lamase");

    anthorobj.sayhello();

    

    delete obj;//此会调用析构函数,new必须delete



    return 0;

}

void A::sayhello()

{

    saywellcome();

    cout<<"good afternoon "<<m_sName<<endl;

}



void A::saywellcome()

{

    cout<<"wellcome"<<endl;

}



A::A()

{

    strcpy(m_sName,"aliay");

    strcpy(m_sPassword,"123456");

}

A::A(char *sName)

{

    strcpy(m_sName,sName);

    strcpy(m_sPassword,"000000");

}

A::A(const A &Aobjs)

{

    strcpy(m_sName,Aobjs.m_sName);

    strcpy(m_sPassword,Aobjs.m_sPassword);//这里是可以访问private的,因为可以算是类内访问

}

A::~A()

{

    cout<<"delete obj"<<endl;

}

/******输出****************

wellcome

good afternoon loster

loster public var

wellcome

good afternoon lamase

delete obj

delete obj(注意这里自动调用了析构函数)

*****************************/

收藏于 2012-03-07
来自于百度空间

C++对象拾遗的更多相关文章

  1. 小甲鱼Python3笔记

    000-愉快的开始 入门容易,学习难,代码量少. 跨平台: Windows, Mac OS, Linux, UNIX. 应用领域: 操作系统 WEB 3D动画 企业应用 云计算等等. 001-我和Py ...

  2. 类和对象:拾遗 - 零基础入门学习Python039

    类和对象:拾遗 让编程改变世界 Change the world by program 这节课谈的内容主要有: 组合 ...... 此处省略N多内容,具体请看视频讲解 ...... 类.类对象和实例对 ...

  3. [Think In Java]基础拾遗1 - 对象初始化、垃圾回收器、继承、组合、代理、接口、抽象类

    目录 第一章 对象导论第二章 一切都是对象第三章 操作符第四章 控制执行流程第五章 初始化与清理第六章 访问权限控制第七章 复用类第九章 接口 第一章 对象导论 1. 对象的数据位于何处? 有两种方式 ...

  4. 9、str类型和byte类型转换、列表拾遗、元组拾遗、字典拾遗、如何判断对象是否可迭代

    str(字节类型,编码)       可用于创建字符串,或者将其他的转换成字符串 a= ‘李露’ #将字符串转换成字节流 b = bytes(a,encoding = 'utf-8') #将字节转换成 ...

  5. [C#.NET 拾遗补漏]03:你可能不知道的几种对象初始化方式

    阅读本文大概需要 1.2 分钟. 随着 C# 的升级,C# 在语法上对对象的初始化做了不少简化,来看看有没有你不知道的. 数组的初始化 在上一篇罗列数组的小知识的时候,其中也提到了数组的初始化,这时直 ...

  6. 基础拾遗 C# Json 与对象相互转换

    方法一.JavaScriptSerializer 方法二.JsonConvert 示例: Web API项目 1.新建 Model: namespace WebApi{ public class Pr ...

  7. Redis命令拾遗二(散列类型)

    本文版权归博客园和作者吴双共同所有,欢迎转载,转载和爬虫请注明原文地址 :博客园蜗牛NoSql系列地址  http://www.cnblogs.com/tdws/tag/NoSql/ Redis命令拾 ...

  8. 基础拾遗------redis详解

    基础拾遗 基础拾遗------特性详解 基础拾遗------webservice详解 基础拾遗------redis详解 基础拾遗------反射详解 基础拾遗------委托详解 基础拾遗----- ...

  9. try catch 与 throw拾遗

    今天在微软虚拟学院看到的代码: var b = 0; try{ if (b == 0) { throw('NO NO!!'); } else { alert('OK OK'); }} catch(e) ...

随机推荐

  1. 使用SharedPreferences存储数据

    SharedPreferences把数据保存在指定名称的XML文件中,文件地址在/data/data/包名/Shared_Prefs/文件夹中,具体是通过map形式保存. 保存数据: SharedPr ...

  2. django-allauth 使用

    参考: http://www.honkerzhou.com/post/3/ https://www.jianshu.com/p/41335d861a8d https://django-allauth. ...

  3. EL&jsp

    JSP 2.0(java server pages): EL 表达式 JSP九大内置对象及作用范围 JSP Directive JSP Action EL表达式: EL 算法(Arithmetic)表 ...

  4. 前端-CSS-8-浮动与清楚浮动(重点)

    <!-- 浮动是css里面布局最多的一个属性 效果: 两个元素并排了,并且两个元素都能够设置宽度和高度 浮动想学好:一定要知道它的四个特性: 1.浮动的元素脱标 2.浮动的元素互相贴靠 3.浮动 ...

  5. 19 python unit4 常用模块练习题&总结

      1.logging模块有几个日志级别? logging模块共有5个级别,分别是: DEBUG INFO WARNING ERROR CRITICAL logging的日志可以分为 debug(), ...

  6. vue深入了解组件——处理边界情况

    一.访问元素&组件 在绝大多数情况下,我们最好不要触达另一个组件实例内部或手动操作DOM元素.不过也确实在一些情况下做这些事情是合适的. 1.1 访问根实例 在每个 new Vue 实例的子组 ...

  7. Python之实例对象的增删改查

    #实例对象的增删改查p1 = ChinesePeople('wangyue')#print (p1.__dict__) #查看实例对象的属性#print (p1.name)(p1.play_ball( ...

  8. 用java编写一个函数,用于计算桌子的面积,可计算任意边长的桌子

    /* *桌子实体类,有属性和方法 */public class Table {    String name; // 声明桌子名称    Double width; // 声明桌子宽度    Doub ...

  9. IntelliJ IDEA教程

    http://www.jetbrains.com/help/idea/meet-intellij-idea.html

  10. TLS/SSL 协议详解 ssL 、TLS 1.0、TLS 1.1、TLS 1.2的了解

    TLS 1.0 RFC http://www.ietf.org/rfc/rfc2246.txt TLS 1.1 RFC http://www.ietf.org/rfc/rfc4346.txt TLS ...