Я новичок в этом сообществе, поэтому, если я нарушаю любой т&c нашего сообщества, задав этот вопрос в неправильном разделе, тогда извините.
Я долго искал ответы на вышеуказанный вопрос, но ни один из результатов не имел отношения к делу.
java** java.awt.*
или любой такой метод, чтобы узнать все пакеты & классы внутри определенного пакета.Я просто хочу знать, что в Java мы смогли изучить методы класса Java с помощью javap, как сделать то же самое в C ++ ???
Вы не можете получить что-нибудь полезное. Для сборок C ++ лучшее, что вы можете получить — искаженные имена. Java хранит все сигнатуры методов класса в файле .class, поэтому на них можно ссылаться и ссылаться. Но C ++ компилируется в ассемблер, и это работает с адресами и стеками памяти и другими вещами более низкого уровня.
Предположим, я хотел бы увидеть все методы класса String в Java, я бы использовал javap, с помощью которого все его методы, их возвращаемый тип, их количество аргументов & их тип данных и т. д., отображаются.
Как сделать то же самое в C ++ ???
Или вы можете прочитать документацию для библиотеки. Вы можете сделать то же самое с библиотеками C ++: прочитайте документацию. Вот для чего это. Или прочитайте заголовки для библиотеки, поскольку у каждой библиотеки C ++ есть те.
Также есть способ командной строки, чтобы узнать, что все пакеты & классы есть в конкретном пакете на языке Java ???
Для Java вы упомянули javap
ранее. Там вы идете 🙂
Для C ++ это действительно зависит от используемой вами цепочки инструментов компилятора. Например, Microsoft Visual C ++ имеет dumpbin
Инструмент CLI, который может предоставить большое количество информации. Но опять же, вы можете получить только искаженные имена, которые могут отражать или не отражать структуру пространств имен и классов, которые использует программа.
Предположим, что java ** java.awt. * Или любой такой метод, чтобы знать все пакеты & классы внутри определенного пакета.
…
Большую часть этой информации (методы, классы, пространства имен (или пакеты в Java)) можно узнать из любой документации, имеющейся для рассматриваемой библиотеки. Если вам нужен исходный код, вы можете получить его бесплатно (для проектов с открытым исходным кодом), купить его у поставщика библиотеки (для проектов с закрытым исходным кодом) или просто обойтись без документации.
Ваш главный вопрос — это исполняемый файл (вывод программы на С ++), где вы можете найти членов, функции и т. Д.
Это невозможно в C ++.
Исполняемый файл C ++ содержит собственный ассемблерный код.
В Java файл класса содержит фактически байтовые коды.