在 iPhone 上编译/运行 C++ 代码

问题描述 投票:0回答:2

我最近使用 openGL、GLU 和 C++ for Linux 为我的一个 CS 课程创建了一个 Asteroids 游戏/应用程序。老师告诉我,如果我让它在 iPhone 上运行,他会给我额外的学分。我一直在四处寻找,我想我必须使用 iPhone 开发套件将其开发/移植到 Objective C。我的问题是:

  • 这容易移植吗?
  • 我可以在 Windows 或 Linux 上安装开发套件吗(我没有 Mac)。
  • 是否有其他方法(快捷方式)可以在 iPhone 上模拟 Linux 二进制文件?

我还没有尝试过任何东西,因为我想先知道你们的想法。您不必确切地告诉我该怎么做,但如果您能为我指明正确的方向,我将不胜感激。

谢谢。

c++ objective-c linux ios4
2个回答
4
投票

好吧,如果您不想将程序移植成另一种语言。您可以使用 SDL2,它看起来相当稳定,并且可以在 iOS (iPhone/iPad/iPod Touch) 上运行。您所要做的就是更改代码,然后使用控件。您必须从 http://hg.libsdl.org/ 克隆 Mercurial 存储库。它将附带一个 README.iOS 文件,其中描述了该端口的工作原理以及一些其他细节。我不确定它是否支持多点触控,我还没有测试过。

此外,您可以在 iPhone 上使用即时模式,但如果这样做,您将无法使用 OpenGL ES 2。您所要做的就是为 OpenGL ES 1.1 创建一个上下文。

您将需要一台 Mac,或者也许您可以使用 Hackintosh 来编译您的代码,然后使用越狱的 iPod/iPhone/iPad 运行它。

注意: 我相信我听说过有些人在 Hackintosh 上编译代码,然后从 Apple 商店内的 Mac 将其提交到应用程序商店。


0
投票

#包括

int main() { 双 num1, num2;

// Input
std::cout << "Enter first number: ";
std::cin >> num1;

std::cout << "Enter second number: ";
std::cin >> num2;

// Addition
double sum = num1 + num2;
std::cout << "Sum: " << sum << std::endl;

// Subtraction
double difference = num1 - num2;
std::cout << "Difference: " << difference << std::endl;

// Multiplication
double product = num1 * num2;
std::cout << "Product: " << product << std::endl;

// Division
if (num2 != 0) {
    double quotient = num1 / num2;
    std::cout << "Quotient: " << quotient << std::endl;
} else {
    std::cout << "Cannot divide by zero." << std::endl;
}

return 0;

}

© www.soinside.com 2019 - 2024. All rights reserved.