文章标题
来源:互联网 发布:灰度共生矩阵 matlab 编辑:程序博客网 时间:2024/06/06 07:38
//1.h 存放类的定义、类成员函数的原型等#pragma once#include<iostream>#include<string>class man //创建类{private: std::string name; //私有成员两个 int year;public: man(); //默认构造函数 man(const std::string a, int b = 0); //因为存在重载析构函数,因此不能提供2个默认参数 inline void update() //成员更新,使用内联函数 { name = "帅", year = 99; } void show(); //显示 ~man(); //析构函数,输出文字,表示析构函数确实运行了};//1.cpp main()函数,赋值,及调用类方法#include<iostream>#include<string>#include"1.h" //调用包含类定义的头文件1.hint main(){ using namespace std; man b; //使用默认构造函数 b.show(); //调用类方法,输出对象的值 { //用括号括起来的块,类对象只在块内存在 cout << "这里开始在块内" << endl; man a("wd",27); //使用自定义析构函数,并不使用默认参数 a.show(); man b("mmmm"); //使用自定义析构函数,并使用默认参数。另外,这里的b隐藏了块外的b b.show(); b.update(); //更新对象的数据 b.show(); } cout << "这里在块外了" << endl; system("pause"); return 0;}//2.cpp 存放类的函数定义#include<iostream>#include"1.h"//因为是类的函数定义,因此要加上作用域解析运算符::man::man() //默认构造函数,构造函数和析构函数的返回值都不加void{ name = "\"NO NAME\""; //提供默认值 year = 0;}man::man(const std::string a, int b) //因为存在重载析构函数,因此不能提供2个默认参数{ name = a; if (b < 0) { std::cout << "人不可能小于0岁,因此,设置为0岁" << std::endl; b = 0; } else year = b;}void man::show() //显示{ using namespace std; cout << name << " is " << year << " years old." << endl;}man::~man() //析构函数,输出文字,表示析构函数确实运行了{ std::cout << name << " end." << std::endl;}
0 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- Directionary字典键值对查找
- 递归大总结之打印大数1-n
- [LeetCode]436. Find Right Interval
- 《flask web开发》第五章重点
- 最长公共子序列,递归简单代码
- 文章标题
- 《UNIX环境高级编程》第3章 文件I/O
- 翻译:如何使用CSS实现多行文本的省略号显示
- 业界难题-“跨库分页”的四种方案
- 抽象类详解
- 409. Longest Palindrome
- Android仿今日头条开源项目
- Maven中maven-source-plugin,maven-javadoc-plugin插件的使用
- 深入浅出DNS系列(二)- DNS