博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C++ 面向对象
阅读量:4916 次
发布时间:2019-06-11

本文共 2379 字,大约阅读时间需要 7 分钟。

 

1. 面向对象小例子

#include 
using namespace std;class bad_hmean {private: double v1; double v2;public: bad_hmean (int a=0, int b=0): v1(a), v2(b){}; // 上下这么写是一样的意思 , 有时候看见上面的都不知道什么意思, 所以这里也就记录一下 // bad_hmean (int a=0, int b=0){v1=a, v2=b}; // virtual ~bad_hmean (); void mesg();};inline void bad_hmean::mesg(){ std::cout << "hmean(" << v1 << ", " << v2 << "): " << "invalid arguments: a = -b\n" << '\n';}int main(int argc, char const *argv[]) { bad_hmean(1, 2).mesg(); // bg.mesg(); return 0;}

 

下面是经常写的, 高级封装, 把类进行拆分, 类和方法分开的形式

 

// 目录和文件都小写, 重要的事情才大写// 类的名字首字母大写#include 
#include
#include "Per.h"Person::Person(){ std::cout << "构造函数: " << this->testAbc << '\n';}Person::~Person(){ std::cout << "析构函数: " << this->testAbd << '\n';}void Person::setpid(int pid){ this->_pid = pid; // this 表示当前对象下的_pid}int Person::getpid(){ return this->_pid;}void Person::setname(string name){ this->_name = name;}string Person::getname(){ return _name;}void Person::setage(int age){ this->_age = age;}int Person::getage(){ return _age;}int main(){ // 锦绣城, 双滦区 2区观鱼园 // -----普通方式----- // /* Person per; per.setpid(1); per.setname("tom"); per.setage(20); int pid = per.getpid(); string name = per.getname(); int age = per.getage(); std::cout << "pid: " << pid << " "; std::cout << "name: " << name<< " "; std::cout << "age: " << age << '\n'; */ // -----指针方式-----// Person *per = new Person(); per->setpid(1); per->setname("Baker"); per->setage(20); int pid = per->getpid(); string name = per->getname(); int age = per->getage(); // delete前打印的 // std::cout << "pid: " << pid << " "; std::cout << "name: " << name<< " "; std::cout << "age: " << age << '\n'; delete per; // delete 后打印的 // std::cout << "pid: " << pid << " "; std::cout << "name: " << name<< " "; std::cout << "age: " << age << '\n'; return 0;}
app.cpp

 

#include 
#include
using namespace std;class Person{ private: int _pid; string _name; int _age; public: int testAbc = 123; int testAbd = 124; Person(); ~Person(); void setpid(int pid); int getpid(); void setname(string name); string getname(); void setage(int age); int getage();};
Per.h

 

转载于:https://www.cnblogs.com/renfanzi/p/9040586.html

你可能感兴趣的文章
如何从思维上应对
查看>>
《离散数学》-图论6.9
查看>>
高斯定理的证明
查看>>
Rails插件:CanCan权限验证插件学习总结
查看>>
硬盘坏道修复的方法
查看>>
Heap and Stack
查看>>
C#。总结
查看>>
修改服务器的3389端口
查看>>
greedy算法(python版)
查看>>
编码(4)
查看>>
How to Transfer Audio Output from Mac OS X to Ubuntu via a Network?
查看>>
Hibernate Annotation笔记
查看>>
spring学习-ApplicationContext-spring上下文深入理解
查看>>
日、周、月活跃用户数,用户流失率
查看>>
java学习-消息队列rabbitmq的组成
查看>>
hdu 4611 Balls Rearrangement
查看>>
在同一iphone项目添加lite版
查看>>
jsp实现仿QQ空间新建多个相册名称,向相册中添加照片
查看>>
NSOperation、NSOperationQueue(III)
查看>>
DB120连接TTL--OpenWRT
查看>>