gpt4 book ai didi

java - 将高度模板化的 C++ 代码迁移到 Java

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:26:12 24 4
gpt4 key购买 nike

我有一个用 C++ 编写的应用程序(大量使用模板),我需要将其带到 Java ME 平台。

我有两个问题:

  1. 是否有任何好的工具可以将 C++ 代码转换为 Java - 做一些基本的事情以便我有一个平台可以开始。我发现这个 - http://tangiblesoftwaresolutions.com/Product_Details/CPlusPlus_to_Java_Converter_Details.html .它至少会消除对简单但耗时的事情的需要,例如将类移动到不同的文件,将 namespace 移动到包等。有人试过吗?或者知道有更好的吗?

  2. 更大的问题是如何处理模板 - 代码大量使用它们。关于如何解决这个问题的任何建议?例如,是否有任何工具可以扩展模板,以便我有一个基本的基础,然后我可以用 Java 编写模块?

如有任何帮助,我们将不胜感激。

最佳答案

对于 Sun 的所有营销而言,Java 不仅仅是更好的 C++,而且实际上不支持 C++ 支持的许多习语和范例。这使得自动翻译变得困难。您应该如何自动将多继承层次结构转换为 Java 的单继承层次结构? (注意,我并不是说多重继承层次结构是一件好事,只是说它在 C++ 中是明确允许的)。更根本的是,您将如何在 Java 中表示指向成员函数的指针?或者处理 Java 和 C++ 重载解析之间的差异?

Java 在几年前添加了泛型,但故意使它们不如 C++ 模板强大。无论这是否是个好主意,它都限制了自动翻译对大量模板化代码的处理能力。

除了使用一些可以将 C++ 转换为 Java 字节码的研究编译器之外,恐怕您可能无法手动进行翻译。

关于java - 将高度模板化的 C++ 代码迁移到 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/919695/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com