1

Xcode で C++ プログラムを作成していますが、アプリをビルドして実行しようとすると Mach-O エラーが発生し続けます (さらに、「ビルドに失敗しました」というエラー メッセージが表示されます)。以下は私が使用しているコードです:

//
//  QuadSolver.cpp
//  Calculator
//
//
#include <iostream>
#include <cstdio>
#include <cstdlib>
#include <cmath>
using namespace std;

int main(int nNumberofArgs, char* pszArgs[])
{
    //enter the three variables
    double a;
    double b;
    double c;
    cout << "Enter A";
    cin >> a;

    cout << "Enter B";
    cin >> b;

    cout << "Enter C";
    cin >> c;

    //calculating a discriminant
    double d;
    d = b * b - 4 * a * c;
    double x1, x2;

    if (d == 0)
    {
        x1 = x2 = -b / (2 * a);
        cout << "There's only one solution: ";
        cout << x1;
        system("PAUSE");
        return 0;
    }

    else if (d < 0)
    {
        cout << "There are no possible solutions, as the discriminant is smaller than zero";
        system("PAUSE");
        return 0;
    }
    else if (d > 0)
    {
        x1 = (-b - sqrt(d)) / (2 * a);
        x2 = (-b + sqrt(d)) / (2 * a);
        cout << "There are two solutions:";
        cout << "x1=";
        cout << x1;
        cout << "x2=";
        cout << x2;
    }
}

エラーメッセージは次のようなものです。

ld: duplicate symbol _main in /Users/myusername/Library/Developer/Xcode/DerivedData/Calculator-cwpaasypxtqkpvfsbfjekrgrgvbq/Build/Intermediates/Calculator.build/Debug/Calculator.build/Objects-normal/x86_64/QuadSolver.o and /Users/myusername/Library/Developer/Xcode/DerivedData/Calculator-cwpaasypxtqkpvfsbfjekrgrgvbq/Build/Intermediates/Calculator.build/Debug/Calculator.build/Objects-normal/x86_64/main.o for architecture x86_64
4

1 に答える 1

2

関数mainは 2 つの場所で定義されています。そこにある小さなプログラムとmain、おそらくテンプレートの一部として提供された という名前のソース ファイルにあります。どのテンプレートを使用したかわかりませんが、プロジェクトで次の名前のファイルを探してmain削除するか、関数の実装をコメントアウトしてmainください。

于 2012-06-05T16:05:46.300 に答える