Erro ao compilar código no C++


inserir a descrição da imagem aquiEstou começando a aprender POO no C++ e quando compilei o código deu um erro muito esquisito que não tenho ideia de como resolver. Não encontrei nada na net que ajudasse. Pensei que eu tivesse feito algo de errado no código e copiei e colei o código nesse site, e deu certo. Por favor me ajudem 🙁 .

Main:

// LivrodeNotasMain.cpp
#include <iostream>
#include "LivroDeNotas.h"

using namespace std;

// a função main inicia a execução do programa
int main() {
    LivroDeNotas meuLivro1("C++ Introdução à Programação"); // cria o objeto LivroDeNotas chamado meuLivro1
    LivroDeNotas meuLivro2("C++ Estrutura de Dados"); // cria outro objeto da classe LivroDeNotas

    // exibe o nome dos cursos
    cout << "meuLivro1 criado com o nome " << meuLivro1.getNomeCurso()
     << "nmeuLivro2 criado com o nome " << meuLivro2.getNomeCurso()
     << endl;
    
    return 0;
}

Implementação das funções:

// LivroDenotas.cpp
#include <iostream>

using namespace std;

#include "LivroDeNotas.h"

// construtor da classe
LivroDeNotas::LivroDeNotas(string nome) {
    nomeCurso = nome;
}

// função que configura o nome do curso
void LivroDeNotas::setNomeCurso(string nome) {
    nomeCurso = nome;
}

// função que retorna o nome do curso;
string LivroDeNotas::getNomeCurso() {
    return nomeCurso;
}

// função que da boas-vindas =D
void LivroDeNotas::exibirMensagem() {
    cout << "Bem-vindo ao livro de notas do curson" <<
        getNomeCurso() << "!" << endl;
}

Arquivo de cabeçalho:

//LivroDeNotas.h
// Definição da classe LivroDeNotas
#include <string>

using namespace std;

// definição da classe LivroDeNotas
class LivroDeNotas {
public:
    LivroDeNotas(string); // construtor da classe
    void setNomeCurso(string); // função que configura o nome do curso
    string getNomeCurso(); // função que retorna o nome do curso;
    void exibirMensagem(); // função de mensagem de boas-vindas :D
private:
    string nomeCurso;
};