ABA


"מישהו יכול להסביר לי מה לעזאזל קורה פה?"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #14639 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 14639
DLN
חבר מתאריך 20.4.07
15884 הודעות, דרג אמינות חבר זה
   20:44   11.03.08   
אל הפורום  
  מישהו יכול להסביר לי מה לעזאזל קורה פה?  
 
   תתעלמו מהעובדה שהקוד מפגר רצח
מה רע בו מבחינה תחבירית?
הVS מזהה לי משהו כמו 50 שגיאות
כולם הזויות מהתחת
לדוגמא הוא לא מזהה את הסימני <> לטמפלייטס
הוא לא מזהה סטרקטים, מחלקות, טיפוסים, כלום, להכל הוא מתייחס כביטוי ונותן לי שגיאות שזה לא מחלקה\סטרקט
הוא לא נותן לי להגדיר טיפוסים
מה הולך פה?

// lPathfinder.cpp : Defines the entry mPoint for the console application.
//

#include "stdafx.h"
#include<stdio.h>
#include<list>
#define n 5
#define m 4
struct mPoint
{
int x,y;
}; //Describes a Coordinate.
typedef int pMap[n][m]; //creates a map
typedef list<mPoint> lPath; // a single successful path from start to end
typedef list<lPath> lPaths; // a list of all successful paths
mPoint makeP(int x, int y) // Groups two values x and y to a single point
bool pCompare(mPoint a, mPoint b) //compares two points for equality. Returns true if the points are the same, false if not.
lPaths final = new lPaths();
void Pathfinder(mPoint stop, pMap mp, lPath current, mPoint loc) // Takes as parameters two points, stop(end point) and loc that serves as the relative start point, our map and the current path(empty on first call)
{
if pCompare(loc,stop)
{
printf("Path found! Adding to list of final lPaths");
final.push_back(current);
return;
}
current.push_back(loc);
m[loc.x][loc.y]=2;
//up
if ((loc.y>0))
if (m[loc.x][(loc.y)-1]==1)
Pathfinder(stop,mp,current,makeP(loc.x,loc.y-1));
//down
if ((loc.y<m-1))
if (m[loc.x][(loc.y)+1]==1)
Pathfinder(stop,mp,current,makeP(loc.x,loc.y+1))
//right
if ((loc.x<n-1))
if (m[(loc.x)+1][loc.y]==1)
Pathfinder(stop,mp,current,makeP(loc.x+1,loc.y))
//left
if ((loc.x>0))
if (m[(loc.x)-1][loc.y]==1)
Pathfinder(stop,mp,current,makeP(loc.x-1,loc.y))
}
int _tmain(int argc, _TCHAR* argv[])
{
pMap mp = { { 1 , 0 , 0 , 0 , 1 } ,
{ 0 , 1 , 0 , 1 , 1 } ,
{ 1 , 1 , 1 , 1 , 1 } ,
{ 0 , 1 , 0 , 0 , 1 } };
lPath c;
struct mPoint sl = makeP(1,2);
struct mPoint e = makeP(3,1);
struct mPoint temp;
Pathfinder(e,mp,c,sl);
while(!final.empty())
{
printf("------------------------------\nPath:");
c=final.pop_front();
while(!c.empty())
{
temp=c.pop_front();
printf("(%d,%d)",temp.x,temp.y
}
printf("End Path\n------------------------------");

}
return 0;
}
mPoint makeP(int x, int y)
{
mPoint p;
p.x=x;
p.y=y;
return p;
}
bool pCompare(mPoint a, mPoint b)
{
return (bool)((a.x=b.x)&&(a.y==b.y));
}


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  המממ Net_Boy  11.03.08 21:53 1
     שאתה מקמפל את זה אתה מקבל את השגיאות האלה? אני מקבל דברים הזויים DLN 12.03.08 08:38 2
     סבבה הstd::list פתר את הבעיה ההזויה הזו :} תודה DLN 12.03.08 10:08 3

       
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק, 2 נקודות
   21:53   11.03.08   
אל הפורום  
  1. המממ  
בתגובה להודעה מספר 0
 
   1. תעשה std::list
2. בprototypes של הפונקציות תוסיף נקודה פסיק.
3. חסרה לך * שאתה מגדיר new lPaths.
4. בשורת if בתוך הפונקציה pathfinder חסרים לך סוגריים

תמשיך משם לפתור את הבעיות


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות, דרג אמינות חבר זה
   08:38   12.03.08   
אל הפורום  
  2. שאתה מקמפל את זה אתה מקבל את השגיאות האלה? אני מקבל דברים הזויים  
בתגובה להודעה מספר 1
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
DLN
חבר מתאריך 20.4.07
15884 הודעות, דרג אמינות חבר זה
   10:08   12.03.08   
אל הפורום  
  3. סבבה הstd::list פתר את הבעיה ההזויה הזו :} תודה  
בתגובה להודעה מספר 1
 
   כל השאר זה באמת תחביר שטותי אבל זה אשכרה לא הראה לי את זה קודם
אין, בגלל זה אני לא אוהב CPP
קיבלתי 50 שגיאות שונות, כל אחת מהן לא קשורה למציאות, ואף אחת מהן לא מצביעה על הבעיה האמיתית...
לא שפה אינטואיטיבית, נורא נורא קשה לדבג אותה ביחס לC#


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net