まず第一に、私は C/C++ の熱心なユーザーではありませんが、両方の言語で書かれた 1 つのプロジェクトがあります。さらに、いくつかの Unix タイプに基づいています (つまり、VS はオプションではありませんか?) 私は現在 Windows 7 x32 を使用しており、Cygwin (g++ コンパイラ) を調べることにしました。しかし、プロジェクト全体を移行する前に、より困難な状況で試してみたかった.
ので、私は持っています
main.cpp
#include <iostream>
#include "h/math.h"
int main()
{
Math math; // just declare the Math variable, nothing else
std::cin.get();
return 0;
}
math.h
#ifndef math
#define math
class Math
{
public:
int Addition(int, int);
int Multiplication(int, int);
};
#endif
数学.cpp
#include "math.h"
int Math::Addition(int x, int y)
{
return x + y;
}
int Math::Multiplication(int x, int y)
{
return x * y;
}
次に、「...\Cygwin\Cygwin.bat」を開き、ファイルへのパス (cd C:\Proj) を設定して、次のコマンドでコンパイルを試みます。
$ g++ main.cpp
そして、私が持っているのはエラーです: main.cpp:エラー:宣言は何も宣言しません
どうしたの?私が理解しているように、「Math math」行は好きではありませんが、VS2010 で試してみると、そのようなエラーはありません。g ++コンパイラが原因で発生していますか? 「クラス」宣言をサポートしていませんか?そのコードを実行するには何を変更すればよいですか?
ありがとう!