Java Object
有一些方法,如 toString
、hashCode
、equals
等。 C++ 有一些内置方法吗? C++ 和 Java 中对象的实际区别是什么?
最佳答案
Java 和 C++ 的工作方式不同。
在 Java 中,每个对象都继承自
Object
类。这是一个基类,提供一些基本成员函数,例如可以被子类覆盖的ToString()
。在 C++ 中没有像
Object
这样的类。实际上C++中的对象这个词指的是任何类型,包括非类类型。
新的 C++11 标准提供了一个标准函数std::to_string
,它对任何对象都有效,假设它存在一个有效的重载。
std::to_string
:http://en.cppreference.com/w/cpp/string/basic_string/to_string
std::hash
:http://en.cppreference.com/w/cpp/utility/hash
也可以通过operator==
定义任何类型之间的相等性
这展示了两种语言之间不同的设计选择。虽然 Java 更面向对象(基类提供功能),但 C++ 标准库使用通用编程范例(可应用于各种类型的算法)。
关于java - Java 和 C++ 的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12551515/