0
私はcodeblockideを使用しています。私はadduser.cppファイルから文字列変数 "名" にアクセスしたい別のソースファイルから変数の値にアクセスするにはどうすればよいですか?
main.cppに
#include <iostream>
#include<string>
#include<fstream>
#include "adduser.h"
using namespace std;
int main()
{
string name;
adduser();
user();
cout<<name;
return 0;
}
adduser.cpp
#include<fstream>
#include<iostream>
#include<cstdlib>
using namespace std;
int adduser()
{
string name,pass;
ofstream fout;
fout.open("test.txt");
cout<<"Enter The Name : ";
cin>>name;
cout<<"Enter The Password : ";
cin>>pass;
fout<<name<<","<<pass<<endl;
fout.close();
return 0;
}
adduser.h
#ifndef ADDUSER_H_INCLUDED
#define ADDUSER_H_INCLUDED
extern std::string name;
int adduser();
#endif // ADDUSER_H_INCLUDED
main.cppに印刷します。
「別のソースファイルから変数にアクセスする方法」を検索し、「extern」キーワードを取得しました。
"extern"を使用しましたが、期待したものが得られなかったため、何も表示されません。
ただし、ここでは機能しません。私は間違っているのですか? どうすればいいですか?
をすることができますが、あなたはいけません。 adduserにパラメータとして名前を渡します(あなたはparaneterリストを変更する必要があります)。 –
私はあなたがC++のスコープルールと関数の概念を誤解していると思います。 – 3442