در پاره ای اوقات کاربر مایل است که به دلایلی مانند خوانا شدن کد گمز برای استفادههای مجدد، به کد گمز خود توضیحاتی را اضافه نماید. برای اینکار گمز محیطی را فراهم کرده است که کاربر در این مواقع بتواند به راحتی کامنت های مورد نظر خود را لحاظ کند. خاصیت این کامنت ها این است که گمز آنها را به عنوان کد نمی شناسد و تنها جهت نمایش از آنها استفاده می شود.
در اینجا قواعد کامنت گذاری در گمز را به چهار دسته تقسیم میکنیم.
دسته اول: توضیحات پس از کلمات رزرو شده
کد زیر را مشاهده کنید:
sets t My text /t1*t10; parameter a My text; table b My text binary variable x My text an 0-1 variable;
متون آبی که در بالا مشاهده می کنید از نوع اول بوده و پس از تعدادی از دستورات رزرو شده ی گمز خواهند آمد.
دسته دوم: استفاده از دستور ‘*’
علامت ستاره asterisk در ابتدای هر خطی که بیاید تمامی آن خط به عنوان کامنت و توضیح اضافی توسط گمز شناخته می شود.
sets i/a,b,c/; * now we defined the sets * comment
دسته سوم: استفاده از دستور دلار، یک خطی
همانطور که به خاطر دارید، سمبل دلار $ به عنوان معرف یک شرط در گمز شناخته می شود. تعدادی از این دستورات تعریف شده توسط دلار به کاربر امکان ایجاد کامنت می دهند. به عنوان مثال ما در کد زیر $comment سمبلی را به نام ! تعریف کرده ایم که در صورتی که در ابتدای هر خط استفاده شود آن خط به عنوان کامنت توسط گمز شناخته می شود. یا $hidden موجب حذف توضیحات داده شده در آن خط در فایل LST می شود. یا با $eolcom و میتوان سمبل هایی را تعریف کرد که می توانند در ابتدا یا انتها یا هرجای یک خط قرار گرفته و مجموعه کاراکترهای بعد از آن را به کامنت تبدیل کند. توجه شود که با دستور $oneolcom که در واقع همان eolcom بوده که در حافظه ی دیفالت گمز وجود دارد می توان رشته ی !! را به عنوان کامنت ساز فعال کرد.
$comment ! parameter a,b,x; a=2; x=3; ! i am a comment. $eolcom @ @ i am a comment too. $hidden a comment I do not want in LST file $log this line will show in log file
معروف ترین کامنت ساز در این دسته $log, $hidden, $eolcom و $comment هستند.
دسته چهارم: استفاده از دستور دلار، چند خطی
کاربر گمز می تواند چند خط را همزمان به صورت کامنت برگزیند. برای اینکار مانند کامنت های تک خطی از دستور دلار استفاده می شود. مثلا با دستور $inlinecom میتوان نمادی را تعریف کرد که توسط آن متونی که در آن نماد قرار میگیرند به عنوان کامنت خوانده شوند. (دیفالت inlinecom به صورت $oninline تعریف شده و رشته ی /* */ را شامل می شود.
یا هر عبارتی که در بین دو دستور $ontext و $offtext قرار گیرد به عنوان کامنت شناخته می شود.
$oninline a=x /* in line comment*/ +1; b = x /* in line comment in line that continues on */ ; $inlinecom { } x=9; { odoi }; $ontext My data would be described in this multiline comment This is the second line $offtext
مرسوم ترین کامنت ساز در این دسته ontext, offtext است.
فایل زیر که توسط دکتر مک کارل ارائه شده است می تواند یک آموزش جامع را به خوانندگان ارائه دهد. درصورتی که در این باره سوالی داشتید از طریق بخش نظرات همین تاپیک استفاده کنید.