| 
	
		
		
			
			 
				
				[בעיה] C++ (מחלקות ומרחבי שמות)
			 
			 
			
            
            
            			
		
		
  		
		הערה מקדימה: אני עובד עם VC++ 2005. 
ולבעיה: 
יצרתי מחלקה String, שהממשק שלה מצוי ב-string.h והמימוש ב-string.cpp, כאשר string.cpp כולל את string.h וכנ"ל main.cpp, שהוא קובץ התוכנית עצמה. כל הקבצים נמצאים באותה תיקייה. 
המחלקה משתמשת בטיפוס מוגדר (typedef), והבעיה היא שכאשר אני מגדיר את הטיפוס ב-string.cpp בלבד התוכנית לא עוברת הידור כי string.h לא מכיר את הטיפוס, והתוכנית עוברת הידור רק אם אני מגדיר את הטיפוס גם ב-main.cpp (הגדרת הטיפוס ב-string.h לא משפיעה כלל). אני לא רוצה להגדיר את הטיפוס בכל פעם שאני משתמש בספרייה. 
 
ובעיה נוספת: 
כאשר ניסיתי להכניס את ממשק המחלקה String שב-string.h למרחב שמות, והצהרתי ב-string.cpp שימוש במרחב שמות זה, התוכנית לא עברה הידור כי הפונקציות החברות של המחלקה String לא הורשו לגשת לאובייקטי String. 
 
 
תודה רבה מראש =]. 
		
		
		
        
		
			
				__________________ 
				פיני: מקודד; מתכנת אתרים:
	קוד: 
	HTML [XHTML], CSS, JavaScript, PHP, mySQL 
 
			 
		
		
		
		
	 |