- Milyen okostelefont vegyek?
- Nem növel telepméretet a Galaxy S26 Ultra
- CMF Buds Pro 2 - feltekerheted a hangerőt
- Xiaomi 15 Ultra - kamera, telefon
- OnePlus 8 Pro - a túlgondolt
- Okosóra és okoskiegészítő topik
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Netfone
- Samsung Galaxy A54 - türelemjáték
- iPhone topik
Aktív témák
-
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
Hirdetés
- Xiaomi Redmi Note 13 256GB, Kártyafüggetlen, 1 Év Garanciával
- LG 42C3 - 42" OLED EVO - 4K 120Hz 0.1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - A9 Gen6 CPU
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X3D 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Apple iPhone 12 Mini 64GB, Kártyafüggetlen, 1 Év Garanciával
- LG 65C3 - 65" OLED evo - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest