#include <iostream>

using namespace  std ; 

class  Cat
{
	public:
		char name[20];
		void Say_Name(void);
	//构造函数名字必须跟类名一样
	//无返回值,但是可以传参
	//调用  不能被调,只能自己运行
	//在该类分配空间时自动运行
	//支持默认参数,并且可以重载

	Cat(const char *name = "kitty");
	Cat(int a , int b ) ;
};

Cat ab("ab") ; 

int main(void)
{
	cout << "before cc " << endl ;
	//构造函数传参
	class Cat  cc("cc") ;   //可以用class  xxxx  abc ;    xxxx  abc ;
	Cat   aa("aa") ;
	cout << "after cc " << endl ;
	Cat   ac(10 , 20);

	//*******************************
	Cat * p = NULL ; 

	//在分配空间时自动调用
	p = new Cat("p") ; 

	delete  p ;
	return 0 ;
}

void Cat::Say_Name(void)
{
	cout << "name : " << this->name << endl ;
}

Cat::Cat(const char *name)
{
	cout << "this is in Constructor" << endl ; 

	strcpy(this->name , name );

	Say_Name();
}

Cat::Cat(int a , int b)
{
	cout << "a  : " <<  a << "  b:  " << b << endl ;
}

运行结果:

C++语言之构造函数的更多相关文章

  1. Flutter学习之Dart语言基础(构造函数)

    最常见的构造函数形式,即生成构造函数,创建一个类的新实例: class Point { num x, y; //Dart中int和double是num的子类 //this引用当前类对象 Point(n ...

  2. 构造函数与 new 命令

    虽然不同于传统的面向对象编程语言,但是JavaScript具有很强的面向对象编程能力.本章介绍JavaScript如何进行“面向对象编程”. 对象的概念 “面向对象编程”(Object Oriente ...

  3. javascript 面向对象 new 关键字 原型链 构造函数

    JavaScript面向对象JavaScript 语言使用构造函数(constructor)作为对象的模板.所谓"构造函数",就是专门用来生成实例对象的函数.它就是对象的模板,描述 ...

  4. Python 构造函数、 Python 析构函数、Python 垃圾回收机制

    构造函数与析构函数 构造函数: 用于初始化类的内容部状态,Python提供的构造函数式 __init__(); 也就是当该类被实例化的时候就会执行该函数.那么我们就可以把要先初始化的属性放到这个函数里 ...

  5. 《JavaScript语言入门教程》记录整理:面向对象

    目录 面向对象编程 实例对象与 new 命令 this关键字 对象的继承 Object对象的方法 严格模式(strict mode) 本系列基于阮一峰老师的<JavaScrip语言入门教程> ...

  6. 深入了解如何构建您的第一个多语言ASP。NET MVC 5 Web应用程序

    下载demo - 3.9 MB 介绍 这篇文章解释了如何创建一个简单的多语言ASP.NET MVC 5 Web应用程序.该应用程序将能够处理英语(美国),西班牙语和法语.英语将是默认语言.当然,扩展解 ...

  7. Golang(笔记) 面向对象

    package main import ( "fmt" ) //对象定义 type Rect struct{ x,y float64 width ,height float64 } ...

  8. 深入浅出C#中的静态与非静态

    C#语言静态类 vs 普通类  C#语言静态类与普通类的区别有以下几点: 1)C#语言静态类无法实例化而普通类可以: 2)C#语言静态类只能从System.Object基类继承:普通可以继承其它任何非 ...

  9. GoLang之方法与接口

    GoLang之方法与接口 Go语言没有沿袭传统面向对象编程中的诸多概念,比如继承.虚函数.构造函数和析构函数.隐藏的this指针等. 方法 Go 语言中同时有函数和方法.方法就是一个包含了接受者的函数 ...

随机推荐

  1. Mac 下安装node.js

    Node.js 简介 Node.js 是一个用Chrome's V8 JavaScript engine 构建的 JavaScript 运行时框架.Node.js 使用事件驱动.非阻塞式 I/O 模块 ...

  2. Android实现分享图片和文字的功能

    为了应用的推广,我们经常看到点击分享按钮会出现,比如微博微信等应用的分享二等列表,这是如何实现的呢?这一篇将要详细的介绍. android的实现分享是通过隐式的启动activity. 分享文本 1.a ...

  3. UE4成批处理透明材质

    项目中需要控制成批的物体的透明度,但是默认的时候他又不能是透明的,对,项目的要求就这么诡异. 然而却没有找到设置材质的BlendMode的功能,于是只有换了一种办法,物体需要透明时更换为透明材质,默认 ...

  4. Intellij IDEA插件开发入门

    现今的IDE尽管有如"洪水猛兽"般强大,但要知道再强大的IDE也没法提供给使用者想要的一切功能, 所以IDE一般都提供有API接口供开发者自行扩展.下面以Intellij IDEA ...

  5. Android开发学习之路--异步消息Handler,Message,Looper和AsyncTask之初体验

    在简易音乐播放器中,用了Handler,也没有过多地去研究学习,这里再学习下android下的异步消息处理机制.这里用了Handler主要是在线程中不能更新UI,而需要通过Handler才可以.关于异 ...

  6. 华为解锁BL

    华为手机要怎么查看手机是否需要解锁呢?相信许多机油都不懂自己入手的手机是否需要解锁.而华为手机自华为C8812之后的高通手机均需要先解锁才能够尽兴刷机或获取Root权限的.那么下面我给大家分享一下华为 ...

  7. 如何在Cocos2D游戏中实现A*寻路算法(三)

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流 ...

  8. [C++学习历程]基础部分 C++中的指针数组和结构

    作者:苏生米沿 本文地址:http://blog.csdn.net/sushengmiyan/article/details/19938177 一.指针 对学习C++来说,指针是一项重要内容,以前,教 ...

  9. UNIX环境高级编程——线程同步之互斥量

    互斥量(也称为互斥锁)出自POSIX线程标准,可以用来同步同一进程中的各个线程.当然如果一个互斥量存放在多个进程共享的某个内存区中,那么还可以通过互斥量来进行进程间的同步. 互斥量,从字面上就可以知道 ...

  10. C语言的指针的基本语法

    这是我在C++编程的一本教科书偶然看到的,就当做一个查询的资料吧