为什么要用面向对象码代码= =、
来源:互联网 发布:维普软件 编辑:程序博客网 时间:2024/04/28 16:31
比如吧实现栈
用结构化的思想这样写
#include <iostream>using namespace std;
#define STACK_SIZE 100
struct Stack
{
int top;
int buffer[STACK_SIZE];
};
bool push(Stack &s,int x){
if (s.top ==STACK_SIZE-1)
{
cout<<"Stack OverFlow!"<<endl;
return false;
}else{
s.top++;
s.buffer[s.top] = x;
return true;
}
}
bool pop(Stack &s,int &x){
if (s.top==-1)
{
cout<<"Empty Stack"<<endl;
return false;
}else{
x = s.buffer[s.top];
s.top--;
return true;
}
}
void showElement(Stack &s){
int temp = s.top;
for (int i = temp;i>=0;i--)
{
cout<<s.buffer[i]<<" ";
}
}
void main(){
Stack st;
st.top = -1;
int x;
push(st,12);
showElement(st);
push(st,13);
showElement(st);
pop(st,x);
showElement(st);
pop(st,x);
showElement(st);
}
感觉main方法里面用着的话总是很别扭恩。然后就是面向对象的代码奉上
#include <iostream>
using namespace std;
#define STACK_SIZE 100
class Stack{
private:
int top;
int buffer[STACK_SIZE];
public:
Stack(){top = -1;}
bool push(int x);
bool pop(int &x);
};
bool Stack::push(int x){
if (top==STACK_SIZE-1)
{
cout<<"Stack OverFlow"<<endl;
return false;
}else{
top++;
buffer[top] = x;
return true;
}
}
bool Stack::pop(int &x){
if (top==-1)
{
cout<<"Empty Stack"<<endl;
return false;
}else{
x = buffer[top];
top--;
return true;
}
}
void main(){
Stack st ;
st.push(12);
st.push(13);
int x ;
st.pop(x);
cout<<x<<" ";
int y ;
st.pop(y);
cout<<y<<" ";
}
啊哈,感觉面向对象用在顺手多了、、
- 为什么要用面向对象码代码= =、
- 面向对象是什么?为什么要面向对象
- 为什么要用面向对象编程
- 什么是面向对象,为什么要面向对象,怎么样面向对象
- [面向对象]为什么要upcasting?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 【什么是对象,为什么要面向对象,怎么才能面向对象?】
- 什么是对象,为什么要面向对象,怎样才能面向对象
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- 什么是对象,为什么要面向对象,怎么才能面向对象?
- JavaSE基础复习六:多线程
- 这个“单”到底应该谁来买?
- 学习OpenCV——HOG
- UIPopoverController优化
- FPGA Verilog HDL 系列实例--------十进制加减法计数器
- 为什么要用面向对象码代码= =、
- Top 10 Programming Fonts
- Android 针对WebView开发
- Win7、VS2008、OpenCV2.3.1出现“丢失tbb_debug.dll”错误
- FPGA Verilog HDL 系列实例--------多位数值比较器
- 关系:一对一、一对多,多对多。
- Ext 异步提交文件
- 成绩处理
- 学习OpenCV——SVM