Hej
mam do napisania program który na początku wczytuje z pliku pierwszą linijkę pliku tekstowego, jeżeli znajdzie tam 0 to używa konstruktora bez argumentowego, jeżeli 1-konstruktor z jednym argumentem - pomoczniczym łańcuchem znaków (nie jest istotne czym jest ten łańcuch)
Mam coś takiego:
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <cstring>
using namespace std;
#pragma warning(disable:4996);
class klasa
{
int ile_razy()
{
}
public:
char pomoc[10];
klasa(const char *tekst);
klasa();
int zestawienie[50];
char najlepszy[50];
void czytaj()
{
}
void WyswietlPomoc()
{
cout<<pomoc;
}
};
klasa::klasa(){};
klasa::klasa(const char *tekst)
{
strcpy(pomoc,tekst);
}
int main()
{
int zadanie;
char pomoc_tymczasowa[10];
FILE *stream;
stream=fopen("C:\\Users\\Wiwo\\Desktop\\dane.txt","r");
if(stream==NULL)
{
cout<<"Blad otwarcia pliku"<<endl;
}
else
{
fscanf(stream,"%d",&zadanie);
fscanf(stream,"%s",&pomoc_tymczasowa);
}
fclose(stream);
if(zadanie==1)
{
klasa a("tralalala");
}
else
{
klasa a();
}
cout<<"Zadanie wynosi: "<<zadanie<<endl;
cout<<pomoc_tymczasowa<<endl<<endl;
cout<<endl<<endl<<endl<<endl;
cout<<pomoc_tymczasowa<<endl;
cout<<a.pomoc<<endl<<endl; //visual studio podkresla a i mówi "identifier "a" is undefinied, wszystkie błędy dotyczą tej linijki
system("pause");
return 0;
}
I takie błędy:
Error 2 error C2065: 'a' : undeclared identifier c:\users\wiwo\documents\visual studio 2012\projects\klasy1\klasy1\main.cpp 74 1 klasy1
Error 3 error C2228: left of '.pomoc' must have class/struct/union c:\users\wiwo\documents\visual studio 2012\projects\klasy1\klasy1\main.cpp 74 1 klasy1
4 IntelliSense: identifier "a" is undefined c:\Users\Wiwo\Documents\Visual Studio 2012\Projects\klasy1\klasy1\main.cpp 74 8 klasy1
plik dane wygląda tak:
1
abca
abcabcade
nsabcatdftabca
abccabc
abcaabcaewrxrabcayyabc
czyli zmienna zadanie otrzymuje 1 i element klasy powinien powstać przez użycie konstruktora z paramtetrem który wpiszę się do zmiennej a.pomoc
Mógł by mi ktoś powiedzieć jak rozwiązać taki problem? nie mam zielonego pojęcia, przecież skoro jest if i else to na pewno element klasy powstanie, to dlaczego VS uważa że jest niezdefiniowany?
będę bardzo wdzięczny za pomoc ;)