//unalias.cpp
#include "unalias.hpp"
#include "main.hpp"
//Namespaces
using namespace std;
//Variables globales
int choice;
std::string lst;
int getalias = 30;
std::string command_to_erase;
//Déclaration de fichiers
fstream list_of_aliases_unalias("../aliases_created/list_of_aliases.txt", ios::app);
fstream modifyBashrc_unalias("/home/" + username + "/.bashrc", ios::app);
ifstream list_of_aliases_reading_unalias("../aliases_created/list_of_aliases.txt", ios::app);
Si vous n'avez pas trop compris, je vous explique:
en fait je ne peux pas créer une var username dans mon unalias.cpp car dans celle de mon main.cpp, il contient le nom d'utlisateur déja rentré avec cin >>.
J'aimerais juste que quand elle soit de type extern, le fichier unalias.cpp puisse y accéder
si vous voulez mon erreur de compilation:
unalias.cpp:19:41: error: ‘username’ was not declared in this scope 19 | fstream modifyBashrc_unalias("/home/" + username + "/.bashrc", ios::app);
Utiliser des globales est une très mauvaise idée, mais ici ça devrait marcher à moins que tu n'aies des includes qui s'inter-utilisent (du genre main.hpp inclut unalias.hpp et unalias.hpp inclut main.hpp, qui est impossible).
D'ailleurs il y a beaucoup trop d'includes dans ton main.hpp. Chaque fichier ne doit inclure que ce dont il a besoin, ton main.hpp devrait être:
Je suppose que le fichier main.cpp est le fichier qui contient la fonction main. Pour moi, ce fichier n'a pas besoin d'un fichier entête associé.
Les fichiers entête doivent servir aux déclaration des autres fichiers sources ou bibliothèque que l'on utilisera. Mais le fichier main.cpp ne sera en principe pas utilisé par d'autre fichier cpp.
Autrement pour l'erreur que tu cites, je ne vois pas, car d'après ta description ça devrait fonctionner.
Problème extern et hpp
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
En recherche d'emploi.
Le Tout est souvent plus grand que la somme de ses parties.