Problem z wysłaniem stringa do konstruktora

0

Cześć, tak jak w temacie, mam problem z wysłaniem stringa do konstruktora.
Mam 3 pliki - main.cpp, klasa.cpp, klasa.h

klasa.h

#pragma once
#include <iostream>
#include <Windows.h>
#include <string>

class ProcMem
{
public:
	ProcMem(string ProcName);
};

klasa.cpp

#include "klasa.h";

using namespace std;

ProcMem::ProcMem(string ProcName)
{
cout << ProcName  << endl;
}

main.cpp

#include <iostream>
#include <Windows.h>
#include <string>
#include "klasa.h"

using namespace std;

int main()
{
	ProcMem test("chrome.exe");
}

I dodam jeszcze, że inta normalnie wysyła, bez żadnych błędów.

A przy wysyłaniu stringa kompilator daje takie błędy:

1

Kompilator wprost Ci mówi co w kodzie jest nieprawidłowe:

#include "klasa.h";

oczekiwano nowego wiersza

Btw, tę wartość raczej przekazujesz, nie wysyłasz ;-)

3
  1. brakuje std::
  2. Użyłeś tego samego symbolu dla klasy i nazwy argumentu konstruktora!

Czyli powinno być:

 ProcMem(std::string value);

Albo :

 ProcMem(const std::string& value);
0

Faktycznie, dzięki za pomoc :)

0

A jeśli tego stringa nie zapisujesz wewnątrz klasy to najlepiej będzie użyć std::string_view.
Fajna rzecz, ale trzeba uważać, bo można sobie zrobić kuku :P

1 użytkowników online, w tym zalogowanych: 0, gości: 1