これは完全にコンパイルされます。ldが1を返しました。パラメータを渡すと終了ステータスエラーが発生しました
とすぐに私は私がコンパイルした後、次のエラー'ld returned 1 exit status error'
を取得するには、次のコード
'populateList(wide, in);'
のコメントを外して
const int NUM_PLAYERS = 10;
struct wrType
{
string name[NUM_PLAYERS];
string team[NUM_PLAYERS];
int catches[NUM_PLAYERS];
int yards[NUM_PLAYERS];
int td[NUM_PLAYERS];
double ypc[NUM_PLAYERS];
};
void populateList(wrType[], ifstream&);
int main(int args, char* argv[])
{
wrType *wide;
char select;
ifstream in;
in.open(argv[1]);
/*populateList(wrType wide, ifstream in); code causing error*/
}
void populateList(wrType wide, ifstream in)
{
};
。 私は多くのフォーラムを見てきましたが、問題を解決できませんでした。私たちは最近、構造体やクラスに入っています。概念を誤解しているのか、それをどう動かすのかはわかりません。
コードは、コマンドラインでファイルを渡してから、後でそれにアクセスし、10人の選手の異なる選手のバブルソートでソートすることができます。私は私の手が保持されないようにしています。なぜなら、私は後で闘うために残りの部分を残しました。コードは関数なしでmainの中で動作しますが、私が持っているコードで関数を呼び出すとすぐに、エラーが発生します。
'In function
main': (.text+0xad): undefined reference to
populateList(wrType*, std::basic_ifstream >&)' collect2: error: ld returned 1 exit status'
編集2:私はそれは私に変換することはできませんMYTYPEを与えるポインタとして渡すしようとすると、
また*完全なエラーと
アップデートをMYTYPEする コードとを
'populateList(wrType wide, ifstream in);'
次のエラーが返されます。
関数 'int main(int、char **)':
34:22: error: expected primary-expression before ‘wide’ populateList(wrType wide, ifstream in); ^ 34:37: error: expected primary-expression before ‘in’ populateList(wrType wide, ifstream in);
1.これは唯一のエラーメッセージですか? 2.コメントアウトされたコードは何をすべきですか? 3. Visual C++を使用していますか? –
あなたのpopulateList関数を呼び出そうとしているコメントアウトされたコードはありますか?その場合、 'populateList(wide、in);が必要です。あなたの関数は、あなたがそれを呼び出すときにどんな型が予期しているかを示します。あなたはそれらの型のインスタンスを渡します。あなたは宣言と定義が異なっています。あなたはそれを修正する必要があります。(そして、彼らはそれが正しいと思います。) – zzxyz
あなたの宣言と定義は異なります。リンカーは関数を見つけることができません、それはそれが異なる過負荷だと思うでしょう。 functionを呼び出すときに、型だけの変数を渡すことはありません: 'populateList(wide、in);' –