בעיה בVisual Studio

zaq1xsw21

New member
בעיה בVisual Studio

יש לי מספר קבצי מקור באותו "solution", אע"פ שמדובר בשני פרוייקטים שונים. למה כאשר אני מנסה להריץ אחד מהם, התוכנה מריצה במקום את קבצי המקור הראשונים?
אחד מהפתרונות שמצאתי הוא ללחוץ על Excluded from Project..אבל לא בא לי לפתוח כל פעם קונסולה חדשה בשביל כל קובץ...אני סה"כ עושה תרגילים מספר...
 

Guy Yafe

New member
מה הכוונה מריצה מספר קבצי מקור?

התוכנה לא מריצה קבצי מקור אלא קובץ בינארי שקומפל מכל מיני קבצי מקור.
יכול להיות שפשוט לא קימפלת אחרי השינוי?
אם יש לך שני קבצים שיש בהם אותם סמלים (פונקציות, משתנים גלובלים וכו'), הקומפילציה שלך מלכתחילה לא תעבור, ואתה בכלל לא תגיע לשלב של הריצה, ולכן מוזר לי שהגעת למצב שיש לך מעין "תחרות" בין קבצי מקור. אתה חייב לדאוג לקמפל כל פעם את הקובץ הנכון, בין השאר באמצעות Exclude From Projec לקבצים שלא רלוונטיים עבורך.

אם אני מבין נכון, יש לך כמה תרגילים להגשה שכל אחד מהם בפרוייקט נפרד באותו Solution? האם לכל אד יש פונקציית main משלו?
אם כן יש לך שתי דרכים לדאוג להריץ את התרגיל הנכון בכל פעם:
הראשונה היא לעשות כמה קונפיגורציות אבל זו דרך קצת מכוערת ומורכבת בהתחלה. (אם כי היא עשויה להקל במהלך כתיבת התרגיל)
השניה היא ליצור Solution נפרד לכל תרגיל, שזה די הגיוני כי לכל תרגיל יש פיתרון משלו.
אני מניח שיש עוד דרכים אבל הן לא עולות לי כרגע.
 

zaq1xsw21

New member
איך מייחדים פונקציית main נפרדת לכל פרויקט?

אתה צודק, בOutput הוא רושם לי שפונקצית main הוגדרה כבר.
אני חייב ליצור Solution חדש על כל תרגיל? מדובר על Source file של 20 שורות מקסימום בינתיים(K&R).
לא עשיתי בדיוק compile...אני מדבר על Start without Debugging.
 

Guy Yafe

New member
הכי קל זה solution נפרד לכל תרגיל

זה גם הגיוני שלכל תרגיל יהיה פיתרון משלו.
אם אתה מתעקש לעבוד עם אותו solution, יש לך כמה דרכים שכל אחת יותר מכוערת מהשניה:
אתה יכול לעשות כמה פרוייקטים נפרדים (אפשר גם פרוייקט אחד בלבד) וכמה קבצים נפרדים: אחד לכל תרגיל.
אחרי זה תעשה קונפיגורציה נפרדת לכל תרגיל, ובכל קונפיגורציה תעשה exclude לכל אחד מהקבצים חוץ מלקובץ הרלוונטי לתרגיל.
הפיתרון הזה ידרוש ממך דם יזע ודמעות והוא לא שווה את המאמץ.
 

Pitzuk

New member
אתה צריך

לומר למערכת איזה פרוייקט להריץ
אם אתה לא תגיד לה היא תריץ את ברירת המחדל
תעמוד על הקובץ שאתה מעוניין -> מקש ימני ותבחר SET AS STARTUP PROJECT
 

zaq1xsw21

New member
אוקיי פתר את הבעיה

בהתחלה דווקא חשבתי שלא הבנת אותי..
 
למעלה