در این آموزش ساختار goto ، نحوه ی کار و اینکه چرا باید از استفاده آن اجتناب کرد را می آموزید.
در برنامه نویسی C++ از goto برای تغییر در ترتیب اجرای برنامه و انتقال از یک قسمت به قسمت دیگر کد استفاده می شود.
توی این پک فوق العاده، سی پلاس پلاس رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با سی پلاس پلاس به عمق فهم برنامه نویسی شیرجه بزن، پروژه محور یاد بگیر و حسابی پول در بیار!
توی این پک فوق العاده، صفرتاصد مبانی برنامه نویسی رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با صفرتاصد مبانی برنامه نویسی اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار!
ساختار goto در C++
goto label;
… .. …
… .. …
… .. …
label:
statement;
… .. …
در ساختار بالا، label علامت است. وقتی که برنامه با goto label; مواجه می شود، کنترل برنامه به label می پرد و ادامه کد از آن جا اجرا می شود.
مثال : goto در C++
- // This program calculates the average of numbers entered by user.
- // If user enters negative number, it ignores the number and
- // calculates the average of number entered before it.
- # include <iostream>
- using namespace std;
- int main()
- {
- float num, average, sum = 0.0;
- int i, n;
- cout << “Maximum number of inputs: “;
- cin >> n;
- for(i = 1; i <= n; ++i)
- {
- cout << “Enter n” << i << “: “;
- cin >> num;
- if(num < 0.0)
- {
- // Control of the program move to jump:
- goto jump;
- }
- sum += num;
- }
- jump:
- average = sum / (i – 1);
- cout << “\nAverage = ” << average;
- return 0;
- }
خروجی
Maximum number of inputs: 10
Enter n1: 2.3
Enter n2: 5.6
Enter n3: -5.6
Average = 3.95
می توانید هر برنامه C++ را بدون استفاده از goto بنویسید.
دلایل پرهیز از استفاده goto
goto به ما این امکان را می دهد که از هر نقطه به نقطه ی دیگری در کد پرش کنیم اما منطق برنامه پیچیده و تو در تو خواهد شد.
در برنامه نویسی مدرن، goto ساختار مضری در نظر گرفته می شود.
به جای goto می توان از break و continue در C++ استفاده کرد.