Estava praticando um pouco de de POO em C++ e tentei desenvolver um controle de uma livraria, entretanto, toda a vez que compilo, é acusada a necessidade da conversão de um tipo não escalar. Alguém poderia me dar uma ajuda?
Segue ai o código:
O erro é esse: conversion for 'Livro*' to non-scalar type 'Livro' required
Tentei no code::blocks e no Dev-C++.
Segue ai o código:
Código:
#ifndef _LIVRO_H_
#define _LIVRO_H_
#include<iostream>
#include<string>
using namespace std;
class Livro{
public:
Livro(char *nom, char *aut, char *editor);
void getnome(){ cout<<"\n "<<nome;}
void getautor(){ cout<<"\n "<<autor;}
void geteditora(){ cout<<"\n "<<editora;}
private:
char nome[50], autor[40], editora[50];
};
Livro::Livro(char *nom, char *aut, char *editor){
strcpy(Livro::nome, nom);
strcpy(Livro::autor, aut);
strcpy(Livro::editora, editor);
}
#endif
Código:
#include<iostream>
#include"livro.h"
using namespace std;
main(){
Livro titulos = new Livro("Eldest", "Christopher Paolini", "Rocco");
titulos.getnome();
titulos.getautor();
titulos.geteditora();
system("pause");
}
Tentei no code::blocks e no Dev-C++.