我是这个社区的新手,所以,如果我在错误的地方问这个问题违反了我们社区的任何t&c,那么我很抱歉。我已经为上面的问题寻找了很长一段时间的答案,但是没有一个结果是相关的。
java** java.awt.*
或任何类似的方法都知道特定包中的所有包和类。发布于 2017-05-14 05:24:44
我只想知道,在java中,我们能够通过使用javap来探索java类方法,如何在c++中做同样的工作呢?
你不能得到任何有用的东西。对于C++程序集,您可以得到的最佳名称是损坏的名称。Java将类的所有方法签名存储在.class文件中,因此可以引用和引用它们。但是C++编译成程序集,它可以处理内存地址、堆栈和其他较低级别的东西。
假设我希望看到java中String类的所有方法,我会使用javap来显示它的所有方法、它们的返回类型、它们的参数数和数据类型等等。如何在c++中做同样的事情?
或者你可以阅读图书馆的文档。您也可以对C++库做同样的操作:阅读文档。这就是它的目的。或者读取库的标头,因为每个C++库都有这样的标题。
此外,是否有命令行方法来探索java语言中的特定包中的所有包和类?
对于Java,您在前面提到了javap
。就这样吧:)
对于C++,这实际上取决于您使用的编译器工具链。例如,MicrosoftVisualC++拥有dumpbin
CLI工具,它可以提供大量的信息。但是,您只能得到损坏的名称,这些名称可能反映也可能不反映程序使用的名称空间和类的结构。
假设java** java.awt.*或任何类似的方法来了解特定包中的所有包和类。
..。
大多数这些信息(方法、类、名称空间(或Java中的包))都可以从有关库的任何文档中了解。如果您想要源代码,那么您可以免费获得它(对于开源项目),或者从库供应商那里购买它(用于封闭源代码项目),或者只需使用文档即可。
发布于 2017-05-14 04:54:02
您的主要问题是给一个可执行程序( c++程序的输出),您能找到什么是成员,函数等。
这在C++中是不可能的。
C++可执行文件包含本机汇编程序代码。
在Java中,类文件实际上包含字节代码。
https://stackoverflow.com/questions/43963958
复制相似问题