C++面向对象程序设计入门:类的实现和使用
来源:互联网 发布:通达信源码论坛 编辑:程序博客网 时间:2024/06/05 22:37
在头文件中声明类,在源文件中实现类。
写一个运算的类:
setOperator函数设置运算符,setParameter函数设置运算参数,result函数得到运算结果。
//operator.h#ifndef OPERATOR_H_#define OPERATOR_H_class Operator{private: char mOp; double mP1; double mP2;public: bool setOperator(char op); void setParameter(double p1,double p2); bool result(double& r);};#endif//operator.cpp#include "operator.h"bool Operator::setOperator(char op){ bool ret = false; if((op == '+') || (op == '-') || (op == '*') || (op == '/') || (op == '%')) { ret = true; mOp = op; } else { mOp = '\0'; } return ret;}void Operator::setParameter(double p1,double p2){ mP1 = p1; mP2 = p2;}bool Operator::result(double& r){ bool ret = true; switch(mOp) { case '/': if((-0.000000001 < mP2) && (mP2 < 0.000000001)) { ret = false; } else { r = mP1/mP2; } break; case '%': if((-0.000000001 < mP2) && (mP2 < 0.000000001)) { ret = false; } else { r = (double)((int)mP1%(int)mP2); } break; case '+': r = mP1 + mP2; break; case '*': r = mP1 * mP2; break; case '-': r = mP1 - mP2; break; default: ret = false; break; } return ret;}//main.cpp#include <stdio.h>#include "operator.h"int main(){ Operator op; double ret = 0; op.setOperator('/'); op.setParameter(11,2); if(op.result(ret)) { printf("ret = %lf or ret = %d\n",ret,(int)ret); } else { printf("Calculate error!\n"); } op.setOperator('%'); op.setParameter(11,2); if(op.result(ret)) { printf("ret = %d\n",(int)ret); } else { printf("Calculate error!\n"); } op.setOperator('+'); op.setParameter(11,2); if(op.result(ret)) { printf("ret = %lf\n",ret); } return 0;}
阅读全文
1 0
- C++面向对象程序设计入门:类的实现和使用
- 使用Java实现面向对象程序设计1
- 使用Java实现面向对象程序设计2
- C 面向对象程序设计
- C++(面向对象程序设计)
- 六、java的面向对象程序设计(类和对象)
- 面向对象的程序设计Java-类和对象
- 【面向对象程序设计常见面试题】类的声明和实现的分开的好处?
- 面向对象的程序设计(C#)
- Java面向对象程序设计,类和对象
- C++OOP程序设计读书笔记之一:面向对象的程序设计简介
- 面向对象程序设计的基本概念和特征
- 面向对象的程序设计
- 面向对象的程序设计
- 面向对象的程序设计
- 面向对象的程序设计
- 面向对象的程序设计
- 面向对象的程序设计
- 把二元查找树转变成排序的双向链表
- eclipse中新建web项目,pom文件报错
- Github上托管项目
- Nginx的介绍及安装过程
- Codeforces 454D Little Pony and Harmony Chest 状压DP
- C++面向对象程序设计入门:类的实现和使用
- UVa10976-Fractions Again?!(枚举)
- (Caffe,LeNet)IDE单步调试(一) Eclipse GPU cuda
- IO流
- myBatis数据查询理解
- Java学习笔记-《Java程序员面试宝典》-第四章基础知识-4.10多线程(4.10.5-4.10.10)
- warning:deprecated conversion from string constant to 'char *' 解决方案
- Kaggle 机器学习竞赛冠军及优胜者的源代码汇总
- 自定义控件格子布局:CellLayout