fork download
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9. using SettingsTest.Properties;
  10. using System.IO;
  11. using System.Collections;
  12.  
  13.  
  14. namespace SettingsTest
  15. {
  16. public partial class Form1 : Form
  17. {
  18. // ############################################### ZMIENNE GLOBALNE ##############################################
  19.  
  20. // deklaracja tablic rejestracji użytkownika
  21. string[] wprowadzLogin_tablica = null;
  22. string[] wprowadzHaslo_tablica = null;
  23. string[] powtorzWprowadzHaslo_tablica = null;
  24. string[] wprowadzNrTel_tablica = null;
  25. string[] wprowadzInnaInformacja_tablica = null;
  26.  
  27. int ktoraOsoba = 0;
  28. bool wykonanieRejestracji = false;
  29.  
  30. // domyślna wartość formularzu rejestracji użytkownika
  31. string LoginDomyslny_tekst = "login";
  32. string HasloDomyslny_tekst = "hasło";
  33. string LoginRejestracjaDomyslny_tekst = "login";
  34. string HasloRejestracjaDomyslny_tekst = "hasło";
  35. string PowtorzHasloRejestracjaDomyslny_tekst = "powtórz hasło";
  36. string NrTelefonuRejestracjaDomyslny_tekst = "nr telefonu";
  37. string InnaInformacjaRejestracjaDomyslny_tekst = "inna informacja";
  38.  
  39. // katalog kontrolek typu textBox
  40. Dictionary<TextBox, string> dic;
  41.  
  42. // ############################################### KONSTRUKTOR ##############################################
  43.  
  44. public Form1()
  45. {
  46. InitializeComponent();
  47.  
  48. // ustawienie napisu na wysokości komunikatu : Twoje konto zostało usunięte
  49. zalogujSie_label.Location = new Point(16, 151);
  50. zalogujSie_label2.Location = new Point(16, 180);
  51.  
  52. // obowiązkowe pola formularzu rejestracji
  53. dic = new Dictionary<TextBox, string>();
  54. dic.Add(wprowadzLogin, "login");
  55. dic.Add(wprowadzHaslo, "hasło");
  56. dic.Add(powtorzWprowadzHaslo, "powtórz hasło");
  57.  
  58. }
  59.  
  60. // ############################################### MENU ##############################################
  61.  
  62. // ZAPISZ USTAWIENIA //
  63. // zapis stanu kontrolek do pliku TXT
  64. private void zapisz_stan(bool x)
  65. {
  66. // zapis stanu do pliku _name.txt
  67. TextWriter tw = new StreamWriter("date.txt");
  68.  
  69. // skonwertowanie zapisanej wartości do int 16 bitowego
  70. tw.WriteLine(Convert.ToInt16(x));
  71. tw.Close();
  72. }
  73.  
  74. // odczyt stanu kontrolek z pliku TXT
  75. private void stan(RadioButton x)
  76. {
  77. TextReader tr = new StreamReader("date.txt");
  78. int zmienna = Convert.ToInt16(tr.ReadLine());
  79. if (zmienna == 1)
  80. {
  81. x.Checked = true;
  82. }
  83. else
  84. {
  85. x.Checked = false;
  86. }
  87.  
  88. tr.Close();
  89. }
  90. private void btnWrite_Click(object sender, EventArgs e)
  91. {
  92. zapisz_stan(ukryjUzytkownikow_kontrolka.Checked);
  93. zapisz_stan(pokazUzytkownikow_kontrolka.Checked);
  94. zapisz_stan(pokazUstawienia_check.Checked);
  95.  
  96. }
  97.  
  98. private void btnRead_Click(object sender, EventArgs e)
  99. {
  100. stan(ukryjUzytkownikow_kontrolka);
  101. stan(pokazUzytkownikow_kontrolka);
  102. }
  103.  
  104.  
  105. // ############################################### LOGOWANIE ##############################################
  106.  
  107. // formularz logowania ( loginBox - pole loginu , loginHasło - pole hasła )
  108. private void loginBox_Click(object sender, EventArgs e)
  109. {
  110. // jeżeli w TextBoxie istnieje tekst domyślny to go kasujemy
  111. if (loginBox.Text == LoginDomyslny_tekst) loginBox.Text = "";
  112. }
  113.  
  114. private void hasloBox_Click(object sender, EventArgs e)
  115. {
  116. if (hasloBox.Text == HasloDomyslny_tekst) hasloBox.Text = "";
  117. // Włączenie pola jako PASSWD w chwili usunięcia tekstu domyślnego
  118. hasloBox.UseSystemPasswordChar = false;
  119. }
  120.  
  121.  
  122. private void LogowaniePrzycisk_Click(object sender, EventArgs e)
  123. {
  124. // wywołanie przycisku odczytajDane
  125. odczytajDane_Click(sender, e);
  126.  
  127. // ADMIN - logowanie
  128. string login_admina = "admin";
  129. string haslo_admina = "12345";
  130.  
  131. // SPRAWDZENIE - logowania || wyświetlamy panel administratora
  132. if (loginBox.Text == login_admina && hasloBox.Text == haslo_admina)
  133. {
  134. panelMenu.Visible = true;
  135.  
  136. // panel użytkownika, zmiana napisu kto zalogowany
  137. panel1.Visible = true;
  138. panelLogowania.Visible = false;
  139. twojLogin.Text = "";
  140. twojLogin.Text += login_admina;
  141. splitContainer1.Panel2.BackColor = System.Drawing.Color.Azure;
  142.  
  143. if (pokazUzytkownikow_kontrolka.Checked == false && ukryjUzytkownikow_kontrolka.Checked == false)
  144. {
  145. ukryci_uzytkownicy.Visible = true;
  146. ukryci_uzytkownicy.Items.Add("Aktualnie nie ma użytkowników w bazie !");
  147. }
  148. return;
  149. }
  150.  
  151. // ############################################### PANEL UŻYTKOWNIKA ##############################################
  152.  
  153. bool ok = false;
  154. for (int i = 0; i < wprowadzLogin_tablica.Length;i++)
  155. {
  156. if (loginBox.Text == wprowadzLogin_tablica[i] && hasloBox.Text == wprowadzHaslo_tablica[i])
  157. {
  158. panelMenu.Visible = true;
  159. ok = true;
  160. panel2.Visible = true;
  161. panel1.Visible = false;
  162. panelLogowania.Visible = false;
  163. twojLogin.Text = "";
  164. Login_usera.Text = "";
  165. NrTelUsera.Text = "";
  166. InnaInformacja_usera.Text = "";
  167. splitContainer1.Panel2.BackColor = System.Drawing.Color.Honeydew;
  168.  
  169. // jeżeli w polu wprowadzNrTel (formularz rejestracji) istnieje tekst domyślny, zmieniamy napis na "nie podano danych"
  170. if (wprowadzNrTel.Text == "nr telefonu") NrTelUsera.Text = "nie podano nr tel";
  171. else NrTelUsera.Text += wprowadzNrTel_tablica[i];
  172.  
  173. if (wprowadzInnaInformacja.Text == "inna informacja") InnaInformacja_usera.Text = "nie podano informacji";
  174. else InnaInformacja_usera.Text += wprowadzInnaInformacja_tablica[i];
  175.  
  176. // nadpisanie tekstu domyślnego wprowadzonym tekstem z tablicy
  177. twojLogin.Text += wprowadzLogin_tablica[i];
  178. Login_usera.Text += wprowadzLogin_tablica[i];
  179.  
  180. }
  181. }
  182.  
  183. if (!ok) { MessageBox.Show("Podano nie poprawne bądź nie istniejące dane logowania !", "Logowanie", MessageBoxButtons.OK, MessageBoxIcon.Error);
  184. return;
  185. }
  186. panel1.Visible = true;
  187. }
  188.  
  189.  
  190. // wylogowanie użytkownika
  191. private void wylogujLabel_Click(object sender, EventArgs e)
  192. {
  193. // przywrócenie domyślnych wartości pól
  194. loginBox.Text = LoginDomyslny_tekst;
  195. hasloBox.Text = HasloDomyslny_tekst;
  196. hasloBox.UseSystemPasswordChar = true;
  197. panelLogowania.Visible = true;
  198.  
  199. if (loginBox.Text != "admin")
  200. {
  201. splitContainer1.Panel2.BackColor = System.Drawing.Color.LightBlue;
  202. panel2.Visible = false;
  203. panel1.Visible = false;
  204. panelMenu.Visible = false;
  205.  
  206. }
  207. else
  208. {
  209. splitContainer1.Panel2.BackColor = System.Drawing.Color.LightBlue;
  210. panel1.Visible = false;
  211. panel2.Visible = true;
  212. panelMenu.Visible = false;
  213.  
  214.  
  215. }
  216. }
  217.  
  218. // ############################################### PANEL ADMINA ##############################################
  219.  
  220. private void dodajUzytkownika_Click(object sender, EventArgs e)
  221. {
  222. // odkrywamy panel rejestracji użytkownika, tym samym wyświetlamy przycisk ukrywający panel rejestracji
  223. panelDodaniaUsera.Visible = true;
  224. ukryjFormularz.Visible = true;
  225. dodajUzytkownika.Visible = false;
  226. ukryjFormularz.Location = new Point(9, 9);
  227. }
  228.  
  229. private void ukryjFormularz_Click(object sender, EventArgs e)
  230. {
  231. // ukrywamy panel rejestracji użytkownika, tym samym wyświetlamy przycisk odkrywający panel rejestracji
  232. panelDodaniaUsera.Visible = false;
  233. dodajUzytkownika.Location = new Point(9, 9);
  234. dodajUzytkownika.Visible = true;
  235. ukryjFormularz.Visible = false;
  236. }
  237.  
  238. // rejestracja użytkownika - - ukrywanie tekstu domyślnego z pól formularzu - -
  239. private void wprowadzUseraUsuniecie_Click(object sender, EventArgs e)
  240. {
  241. // jeżeli w polu wprowadzLogin istnieje tekt domyślny to kasujemy zawartość pola
  242. if (wprowadzLogin.Text == LoginRejestracjaDomyslny_tekst) wprowadzLogin.Text = "";
  243. }
  244.  
  245. private void wprowadzHasloUsuniecie_Click(object sender, EventArgs e)
  246. {
  247. if (wprowadzHaslo.Text == HasloRejestracjaDomyslny_tekst) wprowadzHaslo.Text = "";
  248. wprowadzHaslo.UseSystemPasswordChar = false;
  249. }
  250.  
  251. private void powtorzWprowadzHasloUsunicie_Click(object sender, EventArgs e)
  252. {
  253. if (powtorzWprowadzHaslo.Text == PowtorzHasloRejestracjaDomyslny_tekst) powtorzWprowadzHaslo.Text = "";
  254. powtorzWprowadzHaslo.UseSystemPasswordChar = false;
  255. }
  256.  
  257. private void wprowadzNrTelUsuniecie_Click(object sender, EventArgs e)
  258. {
  259. if (wprowadzNrTel.Text == NrTelefonuRejestracjaDomyslny_tekst) wprowadzNrTel.Text = "";
  260. }
  261.  
  262. private void wprowadzInnaInformacjaUsuniecie_Click(object sender, EventArgs e)
  263. {
  264. if (wprowadzInnaInformacja.Text == InnaInformacjaRejestracjaDomyslny_tekst) wprowadzInnaInformacja.Text = "";
  265. }
  266.  
  267. // walidacja formularzu rejestracji
  268. private void RejestracjaPrzycisk_Click(object sender, EventArgs e)
  269. {
  270.  
  271. // utworzenie listy stringów
  272. List<string> failedFields = new List<string>();
  273.  
  274. // przelecenei po wszystkich konstrolkach
  275. foreach (var key in dic.Keys)
  276. {
  277.  
  278. // sprawdzenei czy kontrolka nie jest pusta bądź nie posiada tekstu z TAG
  279. if (string.IsNullOrEmpty(key.Text) || key.Text == (string)key.Tag)
  280. {
  281. // jezeli posiada zapisujemy ją w tablicy dic
  282. failedFields.Add(dic[key]);
  283. }
  284.  
  285. }
  286.  
  287. // sprawdzenie
  288. if (failedFields.Any())
  289. {
  290. // wyświetlenie napisu wraz z czytaniem wartości z tablicy KEY'a
  291. string message = "Wymagane pola nie są uzupełnione!" + Environment.NewLine
  292. + string.Join(Environment.NewLine, failedFields);
  293. MessageBox.Show(message);
  294. }
  295. // jeżeli nie ma błędu
  296. else
  297. {
  298. // tworzymy dynamiczną tablicę przetrzymującą ile osób mamy jednorazowo wprowadzić do tablicy
  299. int UzytkownikowDoWprowadzenia = 1;
  300. wprowadzLogin_tablica = new string[UzytkownikowDoWprowadzenia];
  301. wprowadzHaslo_tablica = new string[UzytkownikowDoWprowadzenia];
  302. powtorzWprowadzHaslo_tablica = new string[UzytkownikowDoWprowadzenia];
  303. wprowadzNrTel_tablica = new string[UzytkownikowDoWprowadzenia];
  304. wprowadzInnaInformacja_tablica = new string[UzytkownikowDoWprowadzenia];
  305.  
  306. try
  307. {
  308. // przepisujemy dane z pól formularzu do tablicy
  309. wprowadzLogin_tablica[ktoraOsoba] = wprowadzLogin.Text;
  310. wprowadzHaslo_tablica[ktoraOsoba] = wprowadzHaslo.Text;
  311. powtorzWprowadzHaslo_tablica[ktoraOsoba] = powtorzWprowadzHaslo.Text;
  312. wprowadzNrTel_tablica[ktoraOsoba] = wprowadzNrTel.Text;
  313. wprowadzInnaInformacja_tablica[ktoraOsoba] = wprowadzInnaInformacja.Text;
  314.  
  315. // odczytajDane_Click(sender, e);
  316. /* for (int i = 0; i < 1; i++)
  317.   {
  318.   if (wprowadzLogin.Text == wprowadzLogin_tablica[i])
  319.   {
  320.   this.wprowadzLogin.BackColor = System.Drawing.Color.MistyRose;
  321.   return;
  322.   }
  323.   else
  324.   {
  325.   this.wprowadzLogin.BackColor = System.Drawing.Color.White;
  326.   }
  327.   }*/
  328.  
  329. // jeżeli pola haseł są różne, zaznaczamy pola i kończymy działanie funkcji
  330. if (wprowadzHaslo.Text != powtorzWprowadzHaslo.Text)
  331. {
  332. this.wprowadzHaslo.BackColor = System.Drawing.Color.MistyRose;
  333. this.powtorzWprowadzHaslo.BackColor = System.Drawing.Color.MistyRose;
  334. return;
  335. }
  336. else
  337. {
  338. this.wprowadzHaslo.BackColor = System.Drawing.Color.White;
  339. this.powtorzWprowadzHaslo.BackColor = System.Drawing.Color.White;
  340. }
  341.  
  342. // konwersja textBoxa na stringa w celu sprawdzenia długości znaków i ew. wywaleniu błędu
  343. string wprowadzNrTel_ciag = wprowadzNrTel.Text;
  344. if (wprowadzNrTel_ciag.Length == 9 || wprowadzNrTel_ciag.Length == 0 || wprowadzNrTel_ciag == "nr telefonu")
  345. {
  346. this.wprowadzNrTel.BackColor = System.Drawing.Color.White;
  347. }
  348. else
  349. {
  350. this.wprowadzNrTel.BackColor = System.Drawing.Color.MistyRose;
  351. return;
  352. }
  353.  
  354.  
  355. }
  356. // gdyby coś podczas zapisu poszło nie tak
  357. catch
  358. {
  359.  
  360. MessageBox.Show("Błędny zapis - spróbuj ponownie", "Walidacja formularzu", MessageBoxButtons.OK, MessageBoxIcon.Error);
  361. return;
  362.  
  363. }
  364.  
  365.  
  366. // wyświeltenie użytkowników w panelu administratora
  367. // zmienne lokalne oznaczające wprowadzoną wartość dotyczącą użytkownika
  368. string wyswietlenie_loginu = "Login: ";
  369. string wyswietlenie_nr_tel = "Numer telefonu: ";
  370. string wyswietlenie_inna_informacja = "Inna informacja: ";
  371.  
  372. // wyświetlenie wartości na ListBoxie z tablicy
  373. uzytkownicy.Items.Clear();
  374. uzytkownicy.Items.Add("Osoba nr : " + ktoraOsoba);
  375. wyswietlenie_loginu += wprowadzLogin_tablica[ktoraOsoba];
  376. uzytkownicy.Items.Add(wyswietlenie_loginu);
  377. wyswietlenie_nr_tel += wprowadzNrTel_tablica[ktoraOsoba];
  378. uzytkownicy.Items.Add(wyswietlenie_nr_tel);
  379. wyswietlenie_inna_informacja += wprowadzInnaInformacja_tablica[ktoraOsoba];
  380. uzytkownicy.Items.Add(wyswietlenie_inna_informacja);
  381. // nowa linia po każdym użytkowniku
  382. uzytkownicy.Items.Add("");
  383.  
  384.  
  385. // koniec rejestracji
  386. MessageBox.Show("Rejestracja zakończona pomyślnie", "Rejestracja", MessageBoxButtons.OK, MessageBoxIcon.Information);
  387. // rejestracja się wykonała, zmieniamy stan kontrolki na TRUE aby móc wyświetlić dane zarejestrowanej osoby w ListBoxie
  388. wykonanieRejestracji = true;
  389.  
  390. if (wykonanieRejestracji == true)
  391. {
  392. // skasowanie treści formularzu
  393. wprowadzLogin.Text = "";
  394. wprowadzHaslo.Text = "";
  395. powtorzWprowadzHaslo.Text = "";
  396. wprowadzNrTel.Text = "";
  397. wprowadzInnaInformacja.Text = "";
  398.  
  399. // przywrócenie tekstu domyślnego
  400. wprowadzLogin.Text = LoginRejestracjaDomyslny_tekst;
  401. wprowadzHaslo.Text = HasloRejestracjaDomyslny_tekst;
  402. powtorzWprowadzHaslo.Text = PowtorzHasloRejestracjaDomyslny_tekst;
  403. wprowadzNrTel.Text = NrTelefonuRejestracjaDomyslny_tekst;
  404. wprowadzInnaInformacja.Text = InnaInformacjaRejestracjaDomyslny_tekst;
  405. zapiszDane_Click(sender, e);
  406. // RejestracjaPrzycisk_Click(sender, e);
  407.  
  408. }
  409. }
  410. }
  411.  
  412. // dodatkowa walidacja nr komórkowego - ta sprawdza czy wprowadzone wartości są liczbami w przeciwnym razie zwraca błąd
  413. private void wprowadzNrTel_KeyUp(object sender, EventArgs e)
  414. {
  415. try
  416. {
  417. int value = int.Parse(this.wprowadzNrTel.Text);
  418. }
  419. catch
  420. {
  421. this.wprowadzNrTel.BackColor = System.Drawing.Color.MistyRose;
  422. return;
  423.  
  424. }
  425. }
  426.  
  427. // DO PANELU UŻYTKOWNIKA
  428. private void pokazUstawienia_check_CheckedChanged(object sender, EventArgs e)
  429. {
  430. if (pokazUstawienia_check.Checked == true)
  431. {
  432. panelZmianyDanychUsera.Visible = true;
  433. }
  434. else
  435. {
  436. panelZmianyDanychUsera.Visible = false;
  437. pokazUstawienia_check.Checked = false;
  438. }
  439. }
  440.  
  441. // zapis tablic do pliku TXT
  442. private void zapiszDane_Click(object sender, EventArgs e)
  443. {
  444. // otwarcie pliku do zapisu, wraz z opcją dopisywania do pliku - true
  445. using (System.IO.StreamWriter file = new System.IO.StreamWriter(@"C:\w.txt", true)) {
  446. // lecimy po wszystkich elementach tablicy
  447. for (int i = 0; i < wprowadzLogin_tablica.Length; i++)
  448. // uzupełniamy plik na podstawie elementów tablicy wprowadzLogin
  449. foreach (string line in wprowadzLogin_tablica)
  450. {
  451. // zapis każdej tablicy jako osobnego wierszu do pliku TXT
  452. file.WriteLine(wprowadzLogin_tablica[i]);
  453. file.WriteLine(wprowadzHaslo_tablica[i]);
  454. file.WriteLine(powtorzWprowadzHaslo_tablica[i]);
  455. file.WriteLine(wprowadzNrTel_tablica[i]);
  456. file.WriteLine(wprowadzInnaInformacja_tablica[i]);
  457. }
  458. }
  459. }
  460.  
  461. // odczyt tablic z pliku TXT
  462. private void odczytajDane_Click(object sender, EventArgs e)
  463. {
  464. // utworzenie obiektu ArrayList - tablica
  465. ArrayList tablica = new ArrayList();
  466. string line;
  467. // otworzenie pliku do czytania jego zawartości
  468. System.IO.StreamReader file = new System.IO.StreamReader(@"c:\w.txt");
  469. // czytanie pliku linijka po linijce do zmiennej tablica
  470. while ((line = file.ReadLine()) != null)
  471. {
  472. tablica.Add(line);
  473. }
  474.  
  475. // ponowne utworzenie tablic o wielkości 1/5 każdej tablicy
  476. wprowadzLogin_tablica = new string[tablica.Count / 5];
  477. wprowadzHaslo_tablica = new string[tablica.Count / 5];
  478. powtorzWprowadzHaslo_tablica = new string[tablica.Count / 5];
  479. wprowadzNrTel_tablica = new string[tablica.Count / 5];
  480. wprowadzInnaInformacja_tablica = new string[tablica.Count / 5];
  481.  
  482. // zapis do tablicy
  483. int j = 0;
  484. for (int i = 0; i < tablica.Count; i++)
  485. {
  486. // zapisujemy każdy wiersz pliku TXT do odpowiadającej jemu tablicy
  487. if (i % 5 == 0) {wprowadzLogin_tablica[j] = tablica[i].ToString();}
  488. if (i % 5 == 1) {wprowadzHaslo_tablica[j] = tablica[i].ToString();}
  489. if (i % 5 == 2) {powtorzWprowadzHaslo_tablica[j] = tablica[i].ToString();}
  490. if (i % 5 == 3) {wprowadzNrTel_tablica[j] = tablica[i].ToString();}
  491. if (i % 5 == 4) {wprowadzInnaInformacja_tablica[j++] = tablica[i].ToString();}
  492. }
  493.  
  494. // zamknięcie pliku
  495. file.Close();
  496. }
  497.  
  498. private void ukryjUzytkownikow_kontrolka_CheckedChanged(object sender, EventArgs e)
  499. {
  500. // jeżeli chcemy ukryć użytkownikow, ukrywamy listBox użytkownicy a w zamian tego otwieramy listBox informujący, że użytkownicy
  501. // zostali ukryci
  502. if (ukryjUzytkownikow_kontrolka.Checked == true)
  503. {
  504. uzytkownicy.Visible = false;
  505. ukryci_uzytkownicy.Visible = true;
  506. ukryci_uzytkownicy.Items.Clear();
  507. ukryci_uzytkownicy.Items.Add("Użytkownicy zostali ukryci !");
  508. }
  509. }
  510.  
  511. // jeżeli chcemy pokazać użytkowników ukrywamy ListBox z ukrytymi użytkownikami
  512. // dodatkowo sprawdzamy czy wykonano rejestrację, jeżeli nie, wyświetlamy napis : "Aktualnie nie ma użytkowników w bazie"
  513. private void pokazUzytkownikow_kontrolka_CheckedChanged(object sender, EventArgs e)
  514. {
  515. if (pokazUzytkownikow_kontrolka.Checked == true) {
  516. ukryci_uzytkownicy.Visible = false;
  517. uzytkownicy.Visible = true;
  518. }
  519. if (wykonanieRejestracji == false)
  520. {
  521. ukryci_uzytkownicy.Visible = true;
  522. uzytkownicy.Items.Clear();
  523. uzytkownicy.Items.Add("Aktualnie nie ma użytkowników w bazie !");
  524. }
  525. }
  526.  
  527. private void usunUzytkownika_przycisk_Click(object sender, EventArgs e)
  528. {
  529. int Index = uzytkownicy.SelectedIndex;
  530. uzytkownicy.Items[Index] = wprowadzLogin_tablica[0];
  531. MessageBox.Show(wprowadzLogin_tablica[0]);
  532. }
  533.  
  534.  
  535.  
  536.  
  537. }
  538. }
Compilation error #stdin compilation error #stdout 0s 0KB
stdin
Standard input is empty
compilation info
prog.cpp:445:12: error: stray ‘@’ in program
prog.cpp:468:13: error: stray ‘@’ in program
prog.cpp:1:7: error: expected nested-name-specifier before ‘System’
prog.cpp:1:7: error: ‘System’ has not been declared
prog.cpp:2:7: error: expected nested-name-specifier before ‘System’
prog.cpp:2:7: error: ‘System’ has not been declared
prog.cpp:2:13: error: expected ‘;’ before ‘.’ token
prog.cpp:2:13: error: expected unqualified-id before ‘.’ token
prog.cpp:3:7: error: expected nested-name-specifier before ‘System’
prog.cpp:3:7: error: ‘System’ has not been declared
prog.cpp:3:13: error: expected ‘;’ before ‘.’ token
prog.cpp:3:13: error: expected unqualified-id before ‘.’ token
prog.cpp:4:7: error: expected nested-name-specifier before ‘System’
prog.cpp:4:7: error: ‘System’ has not been declared
prog.cpp:4:13: error: expected ‘;’ before ‘.’ token
prog.cpp:4:13: error: expected unqualified-id before ‘.’ token
prog.cpp:5:7: error: expected nested-name-specifier before ‘System’
prog.cpp:5:7: error: ‘System’ has not been declared
prog.cpp:5:13: error: expected ‘;’ before ‘.’ token
prog.cpp:5:13: error: expected unqualified-id before ‘.’ token
prog.cpp:6:7: error: expected nested-name-specifier before ‘System’
prog.cpp:6:7: error: ‘System’ has not been declared
prog.cpp:6:13: error: expected ‘;’ before ‘.’ token
prog.cpp:6:13: error: expected unqualified-id before ‘.’ token
prog.cpp:7:7: error: expected nested-name-specifier before ‘System’
prog.cpp:7:7: error: ‘System’ has not been declared
prog.cpp:7:13: error: expected ‘;’ before ‘.’ token
prog.cpp:7:13: error: expected unqualified-id before ‘.’ token
prog.cpp:8:7: error: expected nested-name-specifier before ‘System’
prog.cpp:8:7: error: ‘System’ has not been declared
prog.cpp:8:13: error: expected ‘;’ before ‘.’ token
prog.cpp:8:13: error: expected unqualified-id before ‘.’ token
prog.cpp:9:7: error: expected nested-name-specifier before ‘SettingsTest’
prog.cpp:9:7: error: ‘SettingsTest’ has not been declared
prog.cpp:9:19: error: expected ‘;’ before ‘.’ token
prog.cpp:9:19: error: expected unqualified-id before ‘.’ token
prog.cpp:10:7: error: expected nested-name-specifier before ‘System’
prog.cpp:10:7: error: ‘System’ has not been declared
prog.cpp:10:13: error: expected ‘;’ before ‘.’ token
prog.cpp:10:13: error: expected unqualified-id before ‘.’ token
prog.cpp:11:7: error: expected nested-name-specifier before ‘System’
prog.cpp:11:7: error: ‘System’ has not been declared
prog.cpp:11:13: error: expected ‘;’ before ‘.’ token
prog.cpp:11:13: error: expected unqualified-id before ‘.’ token
prog.cpp:16:5: error: expected unqualified-id before ‘public’
prog.cpp:538:1: error: expected ‘}’ at end of input
stdout
Standard output is empty