除了非常轻的理论之外,我不了解面向对象的编程特性,所以我希望有人能够告诉我如何使用对象与分组函数不同:
void parent(int a, int b, int c, int d)
{
if(a == ?)
{
void child(int a, int b)
{
etc
}
}
if(b == ?)
{
void child(int c, int d)
{
etc
}
}
if(c == ?)
{
void child(int c, int b, int a)
{
etc
}
}
}
除了传递给/从函数传递的冲突数据类型(在C中,我现在基于我的知识)和访问特定的代码模块稍微冗长,有什么区别?< / p>
希望我已经清楚地提出了我的问题,而在这个过程中并没有过于愚蠢。 :)
感谢。
答案 0 :(得分:0)
对象可以保持内部状态;他们可以公开该状态(通过访问者)或将其完全保密(作为私有变量)。维护任何其他执行单元无法访问的状态的能力是您描述的内容与OOP之间的主要区别。
答案 1 :(得分:0)
功能编程和面向对象编程的概念之间的主要区别在于“谁在做这项工作?”
在功能编程中,您可以使用对数据结构执行操作的方法。
在面向对象编程中,想法是对象本身正在工作。
在大多数情况下,OOP为您提供了更直观的问题抽象,并允许您设计更复杂的结构,同时将角色分配给对象作为玩家。当然在它下面它只是一堆代码,其中函数互相调用。只是概念不同。