Aktív témák
-
dearbear
tag
Hali!
Azért kell nullával egyenlővé tenni, mert ezzel egyértelműen jelzed, hogy absztrakt osztályról van szó. ( Ha jól emléxem az osztályhoz tartozó függvények pointerei mind nullok lennének, ami érvénytelen cím minden architektúrán, tehát példányosíthatatlanná teszi az osztályt. )
Bye! -
BaLinux
tag
Hali!
Absztrakt szülőosztály:
class abstractString{
(ide is jöhetne a char *s;)
public:
virtual void lower()=0;
virtual void upper()=0;
virtual void change()=0;
virtual void outs()=0;
};
Tagfüggvényeket ne definiálj ehhez!
ezek után:
class dynamicString: public abstractString{
private:
char *s;
public:
dynamic();
dynamic(const char &p);
dynamic(char *p);
char *getString(){return s;};
void insert(const char *p){s=strcpy(s,p);}
virtual void outs();
virtual void lower();
virtual void upper();
virtual void change();
};
A virtualt írd ki a felüldefiniált fgv-k előtt. Innentől kezdve ugyanaz, csak még van egy staticString osztályod szintén az abstractString-ből, amit máshogy implementálsz.
sok sikert! -
khalox
őstag
Így van, az ős függvényei mind absztraktak, nincsenek definiálva, csak deklarálva.
Belőle KELL származtatni (hisz más értelme nincs is - csak tervezési mintákban), és a származtatott osztályok mondják meg a megvalósítást (ott definiálja).
Ha beszerez egy könyvet, gyorsan megvan. -
MaUser
addikt
Remélem tud valaki segíteni.
A gondom az volna, hogy megkaptuk a beadandó prog feladatokat, de sajna rendesen belenyúltam.
A feladat a következő:
Csinálni egy virtuális őst amiben csak a fv-eket deklaráljuk és kifejtjük. Ebből az ősből származtatunk egy dinamikus és egy statikus string osztályt. Ezzen pedig különböző fveket hajtunk végre. (titlecase, hány karkater stb....).
A gondom az, hogy az elejét nem tudom megvalósítani, a fv-ekkel már nem lenne gondom.
Ugyanis a tanár határozott kérése az, hogy az ősben csak a fv-ek legyenek és konkrét típus konstruktor(?) pedig ne.
Na valmi ilyen kéne:
//Ez csak egy kezdő váznak kellene, mert eddig megvan -oké nem egy nagy dolog eddig, de ha itt átlendítenétek a többivel sem lenne már gondom.//
#include <iostream.h>
#include <string.h>
#include <ctype.h>
class ancientStatik{
public:
virtual void lower(); //na ezt itt valahogy máshogy kéne:(
virtual void upper();
virtual void change();
virtual void outs();
};
void ancientStatik::lower(){
int i,g=strlen(s);
for (i=0;i<g;i++)
if (isupper(s[i]))
s[i]+=32;
}
void ancientStatik::upper(){
int i,g=strlen(s);
for (i=0;i<g;i++)
if (islower(s[i]))
s[i]-=32;
}
void ancientStatik::change(){
int i,g=strlen(s);
for (i=0;i<g;i++)
if (isupper(s[i]))
s[i]+=32;
else
s[i]-=32;
}
void ancientStatik::outs(){
int i,g=strlen(s);
for (i=0;i<g;i++)
cout<<s[i];
cout<<' ';
}
class dynamic:public ancientStatik{
private:
char *s;
public:
dynamic();
dynamic(const char &p);
dynamic(char *p);
char *getString(){return s;};
void insert(const char *p){s=strcpy(s,p);}
void outs();
void lower();
void upper();
void change();
};
dynamic::dynamic(){
s=new char;
s[0]=0;
}
dynamic::dynamic(char *p){
int len=strlen(p);
s=new char[len+1];
memcpy(s,p,len+1);
}
void main(){
dynamic t1(''ProHarDver''),t4(t1);
t4.change();
t4.outs();
}
Előre is köszönöm a segítséget, de csak négy óra múlva tudom megnézni. Nagyon örülnék ha valaki működőképessé pofozná a feltétlek szerint.
Aktív témák
- A fociról könnyedén, egy baráti társaságban
- Hardcore pizza és kenyér topik
- MWC 2026: Hálózattechnológiai mélyvíz Bóday Tamással. Mint rendesen.
- Jogász topik
- Android alkalmazások - szoftver kibeszélő topik
- ASUS routerek
- Luck Dragon: Asszociációs játék. :)
- Mini-ITX
- VGA kibeszélő offtopik
- exHWSW - Értünk mindenhez IS
- További aktív témák...
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Game Pass Ultimate előfizetések 1 - 36 hónapig azonnali kézbesítéssel a LEGOLCSÓBBAN! AKCIÓ!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
- MS SQL Server 2016, 2017, 2019
- Lenovo ThinkBook 14s Yoga 2-in-1 üzleti laptop tollal ÚJ Állapot i7-1165G7 16gb ram 512ssd FHD Gari
- Yurbuds Ironman fülhallgató
- 267 - Lenovo ThinkBook 16 (G6 ABP) - AMD Ryzen 5 7530U, no GPU
- HIBÁTLAN iPhone SE 2020 64GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS4366
- Samsung Galaxy XCover 5 / 4/64GB / Kártyafüggetlen / 12Hó Garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
