Mon destructeur ne fonctionne pas
yedez
Messages postés
69
Date d'inscription
Statut
Membre
Dernière intervention
-
yedez Messages postés 69 Date d'inscription Statut Membre Dernière intervention -
yedez Messages postés 69 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voila mon tp consiste a implemeneter la classe fichier pour gerer des fichiers textes de longueur constante et controler aux mieux les operations de lecture et d ecriture voila mon code source
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
class file
{
private:
char *nom;
char *mode;
FILE *fp;
int size_len;
public:
file()
{
mode=NULL;
nom=NULL;
fp=NULL;
int size_len=0;
cout<<size_len<<nom<<mode;
}
file( char *name,char *mo,FILE *fp,int taille)
{
nom=new char[sizeof strlen(name)+1];
strcpy(nom,name);
mode=new char[2];
strcpy(mode,mo);
size_len=taille;
fp=fopen(nom,mode);
if (!fp)
cout<<"erreur d'ouverture du fichier";
exit(0);
}
~file()
{
fclose(fp);
}
void set_name(char *s_name){
strcpy(nom,s_name);
}
void set_mode(char s_mode){
strcpy("mode","s_mode");
}
void set_size(int s_size){
size_len=s_size;
}
void set_file(FILE *s_fp){
fp=s_fp;
}
char* get_name(){
return(nom);
}
char *get_mode(){
return(mode); }
FILE *get_file(){
return(fp);
}
int get_size(){
return(size_len);
}
//void methode_ecriture(FILE *fp,char *s);
//void methode_lecture(FILE *fp);
//FILE *create_gile(FILE **fp);
//friend operator+(FILE f1,FILE f2);
};
int main()
{
FILE *fp;
file f("dossier.txt","r",fp,100);
cout<<f.get_name();
}
voila mon tp consiste a implemeneter la classe fichier pour gerer des fichiers textes de longueur constante et controler aux mieux les operations de lecture et d ecriture voila mon code source
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
class file
{
private:
char *nom;
char *mode;
FILE *fp;
int size_len;
public:
file()
{
mode=NULL;
nom=NULL;
fp=NULL;
int size_len=0;
cout<<size_len<<nom<<mode;
}
file( char *name,char *mo,FILE *fp,int taille)
{
nom=new char[sizeof strlen(name)+1];
strcpy(nom,name);
mode=new char[2];
strcpy(mode,mo);
size_len=taille;
fp=fopen(nom,mode);
if (!fp)
cout<<"erreur d'ouverture du fichier";
exit(0);
}
~file()
{
fclose(fp);
}
void set_name(char *s_name){
strcpy(nom,s_name);
}
void set_mode(char s_mode){
strcpy("mode","s_mode");
}
void set_size(int s_size){
size_len=s_size;
}
void set_file(FILE *s_fp){
fp=s_fp;
}
char* get_name(){
return(nom);
}
char *get_mode(){
return(mode); }
FILE *get_file(){
return(fp);
}
int get_size(){
return(size_len);
}
//void methode_ecriture(FILE *fp,char *s);
//void methode_lecture(FILE *fp);
//FILE *create_gile(FILE **fp);
//friend operator+(FILE f1,FILE f2);
};
int main()
{
FILE *fp;
file f("dossier.txt","r",fp,100);
cout<<f.get_name();
}
A voir également:
- Mon destructeur ne fonctionne pas
- Destructeur d odeur maison - Guide