Date.h

#ifndef DATE_H
#define DATE_H class Date{
public:
Date(int d=,int m=,int y=);//自定义了构造方法 会覆盖掉默认的无参构造方法
void setDay(int d);
void print();
private:
int d;
int m;
int y; };
#endif

Date.cpp

#include "stdafx.h"
#include <iostream>
#include "Date.h"
using namespace std; Date::Date(int d, int m, int y){
cout<<"construactor me"<<endl;
this->d=d;//和java一样 这里也有this 有两种使用方式
(*this).m=m;
(*this).y=y;
} void Date::setDay(int d){
this->d=d;
} void Date::print(){
cout<<y<<"-"<<m<<"-"<<d<<endl;
}

Test.cpp

#include "stdafx.h"
#include "Date.h" int _tmain(int argc, _TCHAR* argv[])
{
//由于我没有显式的写出一个默认的构造方法
//而且我还自定义了一个自己的构造方法
//那么自己的构造方法会覆盖掉默认的构造方法的 Date d1;//显示constructor me
//虽然这里创建对象的时候没有写参数 但是并不是调用的默认无参构造方法
//因为我为我的构造方法设置了默认值 所以这里可以不给出
d1.print(); Date d2(,,);//调用自己的构造方法
d2.print();//1993-5-5
return ;
}

=========================================

Date.h

#ifndef DATE_H
#define DATE_H class Date{
public:
Date();
Date(int d,int m,int y);//自定义了构造方法 会覆盖掉默认的无参构造方法
void setDay(int d);
void print();
private:
int d;
int m;
int y;
};
#endif

Date.cpp

#include "stdafx.h"
#include <iostream>
#include "Date.h"
using namespace std; Date::Date(){
cout<<"constructor me"<<endl;
this->d=;
this->m=;
this->y=;
} Date::Date(int d, int m, int y){
cout<<"construactor me"<<endl;
this->d=d;//和java一样 这里也有this 有两种使用方式
(*this).m=m;
(*this).y=y;
} void Date::setDay(int d){
this->d=d;
} void Date::print(){
cout<<y<<"-"<<m<<"-"<<d<<endl;
}

Test

#include "stdafx.h"
#include "Date.h" int _tmain(int argc, _TCHAR* argv[])
{
//假如没有自定义自己的构造方法 Date d1就是调用系统默认的无参数构造方法
//再使用了自己的构造方法的情况下 还想调用无参数的构造方法 就只能再写一个无参数的构造方法
//当然了 这两个构造方法都是自己的方法
Date d1;//显示constructor me
d1.print();//0-0-0 Date d2(,,);//调用自己的有参构造方法
d2.print();//1993-5-5
return ;
}

C++ 面向对象学习2 构造方法的更多相关文章

  1. (转)Python之路,Day6 - 面向对象学习

    本节内容:   面向对象编程介绍 为什么要用面向对象进行开发? 面向对象的特性:封装.继承.多态 类.方法.     引子 你现在是一家游戏公司的开发人员,现在需要你开发一款叫做<人狗大战> ...

  2. js面向对象学习 - 对象概念及创建对象

    原文地址:js面向对象学习笔记 一.对象概念 对象是什么?对象是“无序属性的集合,其属性可以包括基本值,对象或者函数”.也就是一组名值对的无序集合. 对象的特性(不可直接访问),也就是属性包含两种,数 ...

  3. JavaScript之面向对象学习七(动态原型模式、寄生构造函数模式、稳妥构造函数模式创建自定义类型)

    一.动态原型模式 在面向对象学习六中的随笔中,了解到组合构造函数模式和原型模式创建的自定义类型可能最完善的!但是人无完人,代码亦是如此! 有其他oo语言经验的开发人员在看到独立的构造函数和原型时,很可 ...

  4. Python面向对象学习 1 (什么是面向对象,面向对象的应用场景,待更新)

    程序设计的三种基本结构: 面向对象,面向过程,函数式编程   1,什么是面向对象编程    面向对象编程是一种编程方式,此编程方式的落地需要使用 “类” 和 “对象” 来实现,所以,面向对象编程其实就 ...

  5. Java面向对象学习目录

    Java面向对象学习目录 以下为面向对象学习目录,有待补充的部分,我还会再后续的学习过程中加以补充与修改~ 一.面向对象编程思想 二.Java类及类中成员 属性 方法 构造器 代码块 内部类 面向对象 ...

  6. 085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用

    085 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 04 构造方法调用 本文知识点:构造方法调用 说明:因为时间紧张,本人写博客过程中只是 ...

  7. 084 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 03 构造方法-this关键字

    084 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 03 构造方法-this关键字 本文知识点:构造方法-this关键字 说明:因为时间紧 ...

  8. 083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法

    083 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 02 构造方法-带参构造方法 本文知识点:构造方法-带参构造方法 说明:因为时间紧张, ...

  9. 082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法

    082 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 02 构造方法介绍 01 构造方法-无参构造方法 本文知识点:构造方法-无参构造方法 说明:因为时间紧张, ...

随机推荐

  1. package.json配置项

    以下示例列举了常用的地方,一些不常用的可以查看文档:文档地址 { //该模块名字 "name":"test" , //版本 "version" ...

  2. Javascript基础篇小结

    转载请声明出处 博客原文 随手翻阅以前的学习笔记,顺便整理一下放在这里,方便自己复习,也希望你有也有帮助吧 第一课时 入门基础 知识点: 操作系统就是个应用程序 只要是应用程序都要占用物理内存 浏览器 ...

  3. ES6 JavaScript Promise的感性认知

    http://www.zhangxinxu.com/wordpress/2014/02/es6-javascript-promise-感性认知/ 这篇文章讲的很透彻 http://www.zhangx ...

  4. ASPxGridView-单元格合并

    <dx:ASPxGridView ID="gridView" runat="server" ClientInstanceName="gvResu ...

  5. android操作ini工具类

    package com.smarteye.common; import java.io.BufferedReader; import java.io.BufferedWriter; import ja ...

  6. Problem F: Exponentiation大数求幂

    DescriptionProblems involving the computation of exact values of very large magnitude and precision ...

  7. 腾讯QQ首次在PC端采用气泡式聊天界面(from:36kr)

    小伙伴们,你们是否已经发觉,曾经爱过的姑娘在不知不觉中已变了模样,曾经鲜艳的红领巾也不再飘荡于前胸,而曾经最熟悉的QQ电脑 UI,竟在不知不觉中改头换面了. 没关系,少年,还不晚,今天,让我们携起手来 ...

  8. ;(function( $, window, undefined ){ }(jQuery,window))为何需要往里面传$,window,undefined这些参数

    (function( $, jQuery , undefined ) {})(jQuery); 为什么要将window和undefined作为参数传给它? 因为 ecmascript 执行JS代码是从 ...

  9. codeforces 632F. Magic Matrix

    题目链接 给一个n*n的矩阵, 问是否对角线上的元素全都为0, a[i][j]是否等于a[j][i], a[i][j]是否小于等于max(a[i][k], a[j][k]), k为任意值. 前两个都好 ...

  10. Xcode GDB 命令list

    此文下半部分为转载:但是这里有一些我自己使用技巧,结合下面的文章,我们会有更多的收获,在此感谢原创者.     --------------------- 关于调试异常崩溃: 一般崩溃是由内存使用错误 ...