Вот мой код, я пытаюсь создать свой собственный строковый класс, но я застрял здесь … мой учитель не очень хорош: / хорошо, я получил так много ошибок, но я хочу знать, почему эта ошибка появляется «недопустимая директива предварительной обработки #ifndef_CADENA_H»
#include <iostream>
#include <cstdlib>
#ifndef_CADENA_H
#define_CADENA_H
class cadena {
char* Ptrcad;
int tam;
public :
cadena(void);
char* get(void);
void set(*char**)
int longitud;
~ Cadena (void);
};
Cadena :: Cadena(){
Ptrcad = NULL;
tam = 0;
}
char* Cadena :: get(){
return Ptrcad;
}
void Cadena :: set(const char* x){
while(*(x+tam)!='\0'){
tam++;
}
Ptrcad = new char (tam);
for(int i=0;i<tam;i++){
*(Ptrcad +i)= *(x+i);
}
}
int Cadena :: longitud(){
return tam;
}
Cadena :: ~ Cadena(){
delete [] Ptrcad;
tam =0;
}
Из-за подчеркивания я верю. Так должно быть #ifndef CADENA_H
а также #define CADENA_H
, Если вы не хотите сохранить подчеркивание в имени (не рекомендуется в этом случае), то это должно быть #ifndef _CADENA_H
а также #define _CADENA_H