Hackhell Forum 1,216,863 Üye | 460,209 Konu | 4,520,464 Mesaj | 3935 Online

Go Back   Hackhell Forum > Programlamaya Giriş > Delphi & Visual basic & C / C++/C#/Java

C++ kodumda hata: no overloaded function takes 3 parameters

 Programlamaya Giriş Katagorisinde ve  Delphi & Visual basic & C / C++/C#/Java Forumunda Bulunan  C++ kodumda hata: no overloaded function takes 3 parameters Konusunu Görüntülemektesiniz.=>Bir hastaneye tedavi için gelen hastaların kaydını tutan bir c++ kodu yazmam gerekiyordu. Gerekli bütün fonksiyonları hazırladım, menüyü de tamamladım. ...


Cevapla
 
LinkBack Seçenekler Stil
Alt 01-06-2009, 01:40 AM   #1
moonlife1
Geçerken Uğradım
 
moonlife1 - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2007
Mesajlar: 55
reklam@hackhell.com
Teşekkürleri: 227
13 mesajına 25 kere teşekkür edildi.
pcdepo
Exclamation C++ kodumda hata: no overloaded function takes 3 parameters C++ kodumda hata: no overloaded function takes 3 parameters







Bir hastaneye tedavi için gelen hastaların kaydını tutan bir c++ kodu yazmam gerekiyordu. Gerekli bütün fonksiyonları hazırladım, menüyü de tamamladım. Bütün hataları düzelttim ancak sadece 1 hata kaldı:
error C2661: 'CPacient::CPacient' : no overloaded function takes 3 parameters
Visual C++ 6.0 ile derledim. Saatlerce uğraştım ancak bu hatayı çözemedim. Parantez içindeki 3 değişkeni sildiğimde derleme tamamlanıyor ancak bu sefer de menü içindeki diğer fonksiyonlar çalışmıyor.

Kod uzun gelebilir, ancak hata sadece birkaç satır ile alakalı. Anlıyorsanız fazla vaktinizi almaz. Yardım ederseniz çok sevinirim.




Kod:
#include<iostream>
#include<vector>
#include<string>
#include<conio.h>
#include<algorithm>
using namespace std;

class CPacient
{
	string zaboliavane;
	int poseshtenia;
public:
	CPacient(string zaboliavane,unsigned poseshtenia)
	{
		zaboliavane = zaboliavane;
		poseshtenia = poseshtenia;
	}
	CPacient(const CPacient &cc)
	{
		zaboliavane = cc.zaboliavane;
		poseshtenia = cc.poseshtenia;
	}
	string getzaboliavane() const
	{
		return zaboliavane;
	}
	unsigned getposeshtenia() const
	{
		return poseshtenia;
	}
	void setzaboliavane(string zaboliavane)
	{
		zaboliavane = zaboliavane;
	}
	void setposeshtenia(unsigned poseshtenia)
	{
		poseshtenia = poseshtenia;
	}
	unsigned carOld()
	{
		return 2007-poseshtenia;
	}
	CPacient &operator=(const CPacient &cc2)
	{
		zaboliavane = cc2.zaboliavane;
		poseshtenia = cc2.poseshtenia;
		return *this;
	}
	void output(ostream& stream)
	{
		stream<<zaboliavane<<", "<<poseshtenia<<endl;
	}
	void input(istream& stream)
	{
		stream>>zaboliavane>>poseshtenia;
	}
	friend ostream &operator<<(ostream& stream,CPacient cc);
	friend istream &operator>>(istream& stream,CPacient &cc);
};

istream &operator>>(istream& stream,CPacient &cc)
{
	cc.input(stream);
	return stream;
}

ostream &operator<<(ostream& stream,CPacient cc)
{
	cc.output(stream);
	return stream;
}
int operator<(CPacient c1,CPacient c2)
{
	return c1.getposeshtenia()<c2.getposeshtenia();
}

int operator==(CPacient c1,CPacient c2)
{
	return c1.getposeshtenia()==c2.getposeshtenia();
}

class PacientInfo: public CPacient
{	
	string ime;
	string dispanseriziran;
	unsigned sbl;
public:

	PacientInfo():CPacient("","",0)
	{
		ime = "";
		dispanseriziran = "";
		sbl = 0;
	}
	PacientInfo(string ime,string dispanseriziran,unsigned sbl,string zaboliavane,unsigned poseshtenia):CPacient(zaboliavane, poseshtenia)
	{
		ime = ime;
		dispanseriziran = dispanseriziran;
		sbl= sbl;
	}
	string getime()
	{
		return ime;
	}
	string getdispanseriziran() const
	{
		return dispanseriziran;
	}
	unsigned getsbl()
	{
		return sbl;
	}
	PacientInfo &operator=(const PacientInfo &cc2)
	{
		ime = cc2.ime;
		dispanseriziran = cc2.dispanseriziran;
		sbl = cc2.sbl;
		setposeshtenia(cc2.getposeshtenia());
		setzaboliavane(cc2.getzaboliavane());
		return *this;
	}
};
bool operator<(PacientInfo c1,PacientInfo c2)
{
	return c1.getposeshtenia()>c2.getposeshtenia();
}


void sorts(vector<PacientInfo>& v)
{
	sort(v.begin(),v.end());
	for(register int i = 0;i<v.size();i++)
	{
		cout<<v[i].getime()<<" "<<v[i].getzaboliavane()<<endl;
	}
}
void dispanseriziranPacient(vector<PacientInfo> v,string dispanseriziran)
{
	for(register int i = 0;i<v.size();i++)
	{
		if(v[i].getdispanseriziran()==dispanseriziran)
		{
			cout<<"Ime:"<<v[i].getime()<<" "<<"Sumata na bezplatni lekarstva: "<<v[i].getsbl()<<endl;
		}
	}
}
void maxPoseshtenia(vector<PacientInfo> &v)
{
	int max = v[0].getposeshtenia();
	int tempI = 0;
	for(register int i = 0;i<v.size();i++)
	{
		if(max<v[i].getposeshtenia())
		{
			max = v[i].getposeshtenia();
			tempI = i;
		}
	}
	cout<<"Pacientyt koito e s nai goliam broi poseshtenia e : "<<max<<" "<<v[tempI].getime()<<endl;
}
void minPoseshtenia(vector<PacientInfo> &v)
{
	int min = v[0].getposeshtenia();
	int tempI = 0;
	for(register int i = 0;i>v.size();i--)
	{
		if(min>v[i].getposeshtenia())
		{
			min = v[i].getposeshtenia();
			tempI = i;
		}
	}
	cout<<"Pacientyt koito e s nai malyk broi poseshtenia e : "<<min<<" "<<v[tempI].getime()<<endl;
}

void Suma(vector<PacientInfo> &v,int a,int b)
{
	for(register int i = 0;i<v.size();i++)
	{
		if(v[i].getsbl()>=a&&v[i].getsbl()<=b)
		{
			cout<<v[i].getzaboliavane()<<": "<<v[i].getsbl()<<" lv."<<endl;
		}
	}
}
int izbor=0;
void menu()
{
	
	do
	{
		cout<<endl<<"******* MENU *******"<<endl<<endl;
		cout<<"1. Vyvejdane na danni"<<endl;
		cout<<"2. Sortirane na pacienti po zaboliavane"<<endl;
		cout<<"3. Max. i min. broi poseshtenia"<<endl;
		cout<<"4. Broja na vsichki dispanserizirani"<<endl;
		cout<<"5. Sortirane po sumite na bezplatnite lekarstva"<<endl;
		cout<<"6. Izhod"<<endl;
		cout<<"Izberete neshto ot menu (1-6) : ";
cin>>izbor;
		cout<<endl;
	}
	while(izbor<1||izbor>6);
}
void main()
{
	int a,i;
	vector<PacientInfo> pt;
	string ime;
	string dispanseriziran;
	unsigned sbl;
	string zaboliavane;
	unsigned poseshtenia;
	do{
		menu();
	switch(izbor)
	{
	case 1:
		{
			cout<<"Za kolko pacienti shte vyvedete dannite?   "<<endl;
			cin>>a;
			for(i=0;i<a;i++)
			{
				cout<<"Vyvedete imeto na pacienta: "<<endl;
				cin>>ime;
				cout<<"Pacientyt dispanseriziran li e? (Vyvedete 'da' ili 'ne')  "<<endl;
				cin>>dispanseriziran;
				cout<<"Vyvedete broja poseshtenia za poslednata godina:  "<<endl;
				cin>>poseshtenia;
				cout<<"Suma na izpisanite bezplatni lekarstva (po Leva) : "<<endl;
				cin>>sbl;
				cout<<"Zaboliavane (imeto na bolestta): "<<endl;
				cin>>zaboliavane;
				PacientInfo ob(ime,dispanseriziran,sbl, zaboliavane, poseshtenia);
			pt.push_back(ob);
			}
			break;
		}
	case 2:
		{
			cout<<"Sortirane na pacientite po zaboliavane:"<<endl<<endl;
			sorts(pt);
			break;
		}
	case 3:
		{
			maxPoseshtenia(pt);
			minPoseshtenia(pt);
			break;
		}
	case 4:
		{
			dispanseriziranPacient(pt,"da");
			break;
		}
	case 5:
		{	
			int a,b;
			cout<<"Bezplatnite lekarstva sys suma pod 100 leva:"<<endl;
			a=0;
			b=100;
			Suma(pt,a,b);
			cout<<"Bezplatnite lekarstva sys suma mejdu 100 i 1000 leva:"<<endl;
			a=101;
			b=1000;
			Suma(pt,a,b);
			cout<<"Bezplatnite lekarstva sys suma nad 1000 leva:"<<endl;
			a=1001;
			b=65535;
			Suma(pt,a,b);
			break;

		}
	
	}
	}while(izbor!=6);
}
moonlife1 isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Mesajı Spurl ile Paylas!
Alıntı ile Cevapla



Tüm yerli ve yabancı diziler HHİzle'de siz dizi severler ile buluşuyor.

Alt 01-06-2009, 02:27 AM   #2
jokey
Yeni Üye
 
jokey - ait Kullanıcı Resmi (Avatar)
 
Üyelik tarihi: Nov 2005
Mesajlar: 36
reklam@hackhell.com
Teşekkürleri: 55
7 mesajına 12 kere teşekkür edildi.
pcdepo






Merhaba, kod uzun olduğu için fazla inceleyemedim ama sorunun şu olduğu kanaatindeyim:
CPacient sınıfından türettiğin PacientInfo sınıfına ait şu kurucu fonksiyonda
PacientInfo():CPacient("","",0)
{
ime = "";
dispanseriziran = "";
sbl = 0;
}

CPacient sınıfına ait olan(aslında olmayan) CPacient("","",0) kurucu fonksiyonunu çağırmışsın. işte sorunda tam burada: CPacient sınıfında 3 argüman alan bir kurucu yok. başka sorun olursa yardımcı olmaya çalışırım.
jokey isimli üyemiz çevrimdışıdır. (Offline)  
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Mesajı Spurl ile Paylas!
Alıntı ile Cevapla
Bu mesaj için jokey kullanıcısına teşekkür edenler:
moonlife1 (03-06-2009)



Tüm yerli ve yabancı diziler HHİzle'de siz dizi severler ile buluşuyor.

Cevapla

Etiketler
function, hata, kodumda, overloaded, parameters, takes

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 11:46 PM.

Forum Yasal Uyarı HH
Kullanılan Portal Sürümü : HH Portal
Script Sürümü : vBulletin Version 3.8.4 PL1
Seo Yazılımı : vBSEO ©2009, Crawlability, Inc
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Sitemiz Internet Explorer 6+, Firefox 2.0.0.14+, Opera 9.52+, Safari 3.1.2+, Chrome 0.2.153.1+ ve 1024x768+ Ekran Çözünürlüğünde Test Edilmiştir.

Sponsor Bağlantı : dövme | mirc indir | dövme | mirc | sohbet | sohbet | msn show
Sitemiz, hukuka, yasalara, telif haklarına ve kişilik haklarına saygılı olmayı amaç edinmiştir. Sitemiz, 5651 sayılı yasada tanımlanan .yer sağlayıcı. olarak hizmet vermektedir. İlgili yasaya göre, site yönetiminin hukuka aykırı içerikleri kontrol etme yükümlülüğü yoktur. Bu sebeple, sitemiz .uyar ve kaldır. prensibini benimsemiştir. Telif hakkına konu olan eserlerin yasal olmayan bir biçimde paylaşıldığını ve yasal haklarının çiğnendiğini düşünen hak sahipleri veya meslek birlikleri, abuse@hackhell.com mail adresinden bize ulaşabilirler. Buraya ulaşan talep ve şikayetler Hukuk Müşavirimiz tarafından incelenecek, şikayet yerinde görüldüğü takdirde ihlal olduğu düşünülen içerikler sitemizden kaldırılacaktır. Ayrıca, mahkemelerden talep gelmesi halinde hukuka aykırı içerik üreten ve hukuka aykırı paylaşımda bulunan üyelerin tespiti için gerekli teknik veriler sağlanacaktır.
Valid CSS!