【发布时间】:2021-08-22 05:59:49
【问题描述】:
所以我在函数中读取了一个文件并将值设置为一个类。我想在另一个函数(另一个 .cpp 文件)中读取这些相同的值,但我无法让它工作。
这是我从 .txt 文件中读取值的代码。这似乎有效。我可以计算出我读取的值。
#include "branjeDatoteke.h"
#include "parametri.h"
#include <iostream>
#include <fstream>
#include <string>
#include <cstring>
using namespace std;
void branjeDatoteke() {
Parametri pin[101];
string line;
ifstream myfile("pin.txt");
if (myfile.is_open())
{
for (int i = 0; i <= 100 && getline(myfile, line); i++)
{
pin[i].setPin(line);
// cout << pin[i].readPin() << endl;
//cout << line << '\n';
}
myfile.close();
// cout <<"tole more delat: "<< pin[2].readPin() << endl;
}
else cout << "Unable to open file";
}
这是我想再次获得相同值的代码,但 cout 不起作用。我只是得到 cout 应该在的空白控制台。
#include <iostream>
#include "pin.h"
#include "parametri.h"
#include <string>
#include "branjeDatoteke.h"
using namespace std;
void pinPass() {
Parametri pin[101];
string pinKoda;
branjeDatoteke();
cout << pin[0].readPin() << endl;
cout << "Vnesite pin: ";
cin >> pinKoda;
for (int i = 0; i <= 100; i++) {
if (pin[i].readPin() == pinKoda) {
cout << pin[i].readPin() << endl;
cout << "KODA JE PRAVILNA" << endl;
}
else if (i > 100) {
cout << "kode ni v sistemu" << endl;
}
}
}
【问题讨论】:
-
您没有将任何东西从
branjeDatoteke()传递到pinPass()。您希望这些值如何到达那里?! -
仅供参考,术语“OOP”是指面向对象的编程——不是用对象编程。请仅在您进行一些疯狂的继承等时使用该标签。