第1个回答 2013-09-03
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为面向对象: 举个例子,盖一座大楼,你想到的是楼怎么盖,哪里要有柱子,哪里要有梁,哪里楼梯等等(这就是面向对象),至于柱子该怎么建,用什么建,方的圆的,等等,这就是面向过程。 用面向对象思考问题更符合我们人的思考方式。 其实我们人现实生活中都是在面向对象。比如:去饭店吃饭,你只要说明吃什么就可以了,有必要还了解这个菜是怎么做的,是哪里来的,怎么去种这个菜吗? 面向对象也可以说是从宏观方面思考问题,而面向过程可以说是从细节处思考问题。在面向对象中,也存在面向过程。
第3个回答 2013-09-03
using namespace System;public value class Complex{ double real; double imag; public: static initonly Complex i; static Complex() { i = Complex(0.0, 1.0); } Complex(double real) { this->real = real; this->imag = 0.0; } Complex(double real, double imag) { this->real = real; this->imag = imag; } property double Real { double get() { return real; } void set(double value) { real = value; } } property double Imag { double get() { return imag; } void set(double value) { imag = value; } } static Complex operator+(Complex z1, Complex z2) { return Complex(z1.real + z2.real, z1.imag + z2.imag); } static Complex operator-(Complex z1, Complex z2) { return Complex(z1.real - z2.real, z1.imag - z2.imag); } String^ ToString() override { if (imag < 0.0) { return String::Format("({0} - {1}i)", real, -imag); } else if (1.0/imag == Double::NegativeInfinity) { return String::Format("({0} - 0.0i)", real); } else { return String::Format("({0} + {1}i)", real, +imag); } } };