كيفية استخدام الثوابت في Golang

ما هو الثابت أو Const في Golang ؟ إليك ما تحتاج إلى معرفته حول استخدام الثوابت في Go .

كما يوحي الاسم، ثابت يعني ثابت. والشيء نفسه ينطبق على لغات البرمجة، أي بمجرد تعريف قيمة الثابت، لا يمكن تعديلها أكثر من ذلك. يمكن أن يكون هناك أي نوع أساسي من البيانات الثابتة مثل ثابت صحيح، أو ثابت ديناميكي، أو ثابت حرفي، أو سلسلة.

كيفية استخدام الثوابت في Golang

كيفية الإعلان: يتم الإعلان عن الثوابت مثل المتغيرات ولكن استخدم كلمة const كبادئة لإعلان الثوابت بنوع بيانات محدد. لا يمكن إعلان الثوابت باستخدام صيغة ": " = ".

على سبيل المثال:

package main

import "fmt"

const PI = 3.14

func main() 
{
	const GFG = "Quantrimang"
	fmt.Println("Hello", GFG)

	fmt.Println("Happy", PI, "Day")

	const Correct= true
	fmt.Println("Go rules?", Correct)
}

نتيجة:

Hello Quantrimang
Happy 3.14 Day
Go rules? true

أشياء يجب معرفتها عن الثوابت في Golang

الثوابت الرقمية بدون نوع ومع النوع

تتصرف الثوابت المكتوبة مثل المتغيرات غير القابلة للتغيير والتي يمكنها التفاعل فقط مع نفس الأنواع، وتتصرف الثوابت غير المكتوبة مثل الثوابت الحرفية التي يمكنها التفاعل مع أنواع مماثلة. يمكن إعلان الثوابت بنوع أو بدون نوع في Go. تُظهر الأمثلة التالية الثوابت الرقمية المكتوبة وغير المكتوبة، والمسماة وغير المسماة.

const untypedInteger          = 123
const untypedFloating          = 123.12

const typedInteger  int             = 123
const typedFloatingPoint   float64  = 123.12

فيما يلي قائمة الثوابت في لغة Go:

  • الثوابت (الثوابت الصحيحة، الثوابت الديناميكية، الثوابت المعقدة)
  • سلسلة من الأحرف
  • ثابت منطقي

عدد ثابت

الثوابت الرقمية هي قيم ذات دقة عالية. نظرًا لأن Go هي لغة ذات نوع ثابت، فهي لا تسمح بالعمليات التي تجمع الأنواع الرقمية. لا يمكنك الإضافة float64إلى int، أو حتى int32إلى int. ومع ذلك فإنه لا يزال من الصحيح أن نكتب 1e6*time.Secondأو math.Exp(1)أو حتى 1<>. في Go، تتصرف الثوابت، على عكس المتغيرات، مثل الأرقام العادية.

الثوابت الرقمية هي من ثلاثة أنواع:

  1. عدد صحيح
  2. النقطة العائمة
  3. معقد

ثابت صحيح:

  • تحدد البادئة القاعدة: 0x أو 0X للسداسي عشر، و0 للثماني، ولا شيء للعشري.
  • يمكن أن يحتوي أيضًا الحرف الصحيح على لاحقة عبارة عن مزيج من U (أحرف كبيرة) وL (أحرف صغيرة)، للإشارة إلى غير موقّع وطويل على التوالي.
  • يمكن أن يكون ثابتًا عشريًا أو ثمانيًا أو سداسيًا عشريًا.
  • يمكن لـ int تخزين ما يصل إلى عدد صحيح مكون من 64 بت وأحيانًا أقل.

فيما يلي بعض الأمثلة على الثوابت الصحيحة:

85 /* thập phân */
0213 /* bát phân */
0x4b /* thập lục phân */
30 /* int */
30u /* unsigned int */
30l /* long */
30ul /* unsigned long */
212 /* Hợp lệ */
215u /* Hợp lệ */
0xFeeL /* Hợp lệ */
078 /* Không hợp lệ: 8 không phải là chữ số bát phân */
032UU /* Không hợp lệ: không thể lặp lại hậu tố */

الثوابت المعقدة:

تعمل الثوابت المعقدة بشكل مشابه جدًا لثوابت النقطة العائمة. هو زوج مرتب أو زوج حقيقي من الثوابت الصحيحة (أو المعلمات). ويتم فصل الثوابت بفواصل، ويتم وضع أزواج الأرقام بين قوسين. الثابت الأول هو الجزء الحقيقي، والثابت الثاني هو الجزء التخيلي. يستخدم الثابت المعقد COMPLEX*8، 8 بايت من مساحة التخزين.

على سبيل المثال:

(0.0, 0.0) (-123.456E+30, 987.654E-29)

ثابت النوع الديناميكي:

  • تحتوي ثوابت الأعداد الحقيقية على جزء صحيح، وجزء عشري، وجزء كسري، وجزء أس.
  • يمكن تمثيلها على أنها عدد حقيقي ثابت في شكل عشري أو أسي.
  • عندما يتم التعبير عنها في شكل عدد عشري، يجب أن تتضمن نقطة عشرية، أو أس، أو كليهما.
  • وعندما يتم التعبير عنها في صورة أسي، فيجب أن تتضمن جزءًا صحيحًا، أو جزءًا كسريًا، أو كليهما.

على سبيل المثال:

3.14159 /* Hợp lệ */
314159E-5L /* Hợp lệ */
510E /* Không hợp lệ: số mũ không đầy đủ */
210f /* Không hợp lệ: không có số thập phân hoặc số mũ */
.e55 /* Không hợp lệ: thiếu số nguyên hoặc phân số */

سلسلة من الأحرف

  • يدعم Go نوعين من الأحرف النصية، أي ” ”(نمط الاقتباس المزدوج) و ‘ ‘(نمط الاقتباس العكسي).
  • يمكن ربط السلاسل باستخدام المشغلين +and +=.
  • تحتوي السلاسل على أحرف مشابهة للأحرف الحرفية: أحرف عادية، وتسلسلات إفلات، وأحرف عالمية. وهذه شخصية بلا أسلوب.
  • القيمة الصفرية لأنواع السلسلة هي السلسلة الفارغة، والتي يمكن تمثيلها بواسطة ” ”أو في الأحرف.
  • يمكن مقارنة جميع أنواع السلاسل باستخدام عوامل مثل ==و !=(لمقارنة الأنواع المتشابهة)

بناء الجملة:

kiểu _string struct {
các phần tử *byte // các byte cơ bản
len int // số byte
}

على سبيل المثال:

"hello, quantrimang" 

"hello, \ 

quantrimang" 

"hello, " "quan" "trimang" 

هنا، العبارات الثلاث متشابهة، أي أنها لا تحتوي على نوع محدد.

على سبيل المثال:

package main

import "fmt"

func main()
{
	const A = "GFG"
	var B = "GeeksforGeeks"
	
	// Chuỗi Concat.
	var helloWorld = A+ " " + B
	helloWorld += "!"
	fmt.Println(helloWorld) 
	
	// Chuỗi so sánh.
	fmt.Println(A == "GFG") 
	fmt.Println(B < a)="">

نتيجة:

GFG Quantrimang!
true
false

تعقيد الوقت: O(1)
الفضاء المساعد: O(1)

ثابت منطقي

الثوابت المنطقية تشبه ثوابت السلسلة. يتم تطبيق نفس القواعد على ثوابت السلسلة. الفرق الوحيد هو أنه يحتوي على اثنين من الثابتين بدون نوع trueو false.

package main

import "fmt"

const Pi = 3.14

func main() 
{
	const trueConst = true
	
	// Định nghĩa kiểu bằng từ khóa type
	type myBool bool 
	var defaultBool = trueConst // được phép
	var customBool myBool = trueConst // được phép
	
	// defaultBool = customBool // không được phép
	fmt.Println(defaultBool)
	fmt.Println(customBool) 
}

نتيجة:

true
true

تعقيد الوقت: O(1)
الفضاء المساعد: O(1)

الثوابت في Go: تحتوي Go على ثوابت أحرفية وسلاسل وقيم منطقية وأرقام. يعلن Const عن قيمة ثابتة. يمكن أن يحدث بيان constعندما يكون هناك متغير وبالتالي، تنفيذ العمليات الحسابية دون أي دقة ثابتة.

// Minh họa hằng số bằng cách dùng go.
package main

import (
	"fmt"
	"math"
)

const s string = "Quantrimang"

func main() {
	fmt.Println(s)

	const n = 5

	const d = 3e10 / n
	fmt.Println(d)

	fmt.Println(int64(d))

	fmt.Println(math.Sin(n))
}

نتيجة:

Quantrimang
6e+09
6000000000
-0.9589242746631385

تعقيد الوقت: O(1)
الفضاء المساعد: O(1)

إذا كنت تريد تعريف ثوابت متعددة في وقت واحد، فيمكنك القيام بذلك باستخدام كتلة من الأقواس كما هو موضح أدناه.

package main

import "fmt"

const (
	GFG	 = "Quantrimang"
	Correct = true
	Pi	 = 3.14
)

// Hàm chính
func main() {

	fmt.Println("value of GFG : ", GFG)

	fmt.Println("value of Correct : ", Correct)

	fmt.Println("value of Pi : ", Pi)
}

نتيجة:

value of GFG :  Quantrimang
value of Correct :  true
value of Pi :  3.14

اترك تعليقاً

How to Fix Microsoft Teams Password Error Forgot

How to Fix Microsoft Teams Password Error Forgot

Struggling with Microsoft Teams Password Error because you forgot your password? Follow our step-by-step guide on how to fix Microsoft Teams password error forgot issues quickly and securely. No tech skills needed!

لماذا يُعدّ مايكروسوفت تيمز بطيئًا جدًا؟ ١٠ نصائح لتسريعه في عام ٢٠٢٦

لماذا يُعدّ مايكروسوفت تيمز بطيئًا جدًا؟ ١٠ نصائح لتسريعه في عام ٢٠٢٦

هل تشعر بالإحباط من بطء برنامج مايكروسوفت تيمز؟ اكتشف سبب بطء مايكروسوفت تيمز وطبّق هذه النصائح العشر المجربة لتسريعه بشكل كبير في عام 2026 من أجل تعاون سلس للغاية.

كيفية إصلاح خطأ عدم تحميل علامة تبويب ويكي في مايكروسوفت تيمز

كيفية إصلاح خطأ عدم تحميل علامة تبويب ويكي في مايكروسوفت تيمز

هل تواجه مشكلة في تحميل علامة تبويب ويكي في مايكروسوفت تيمز؟ اكتشف حلولاً مجربة خطوة بخطوة لحل المشكلة بسرعة، واستعادة علامات تبويب ويكي، وتعزيز إنتاجية فريقك دون عناء.

كيفية إصلاح أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز

كيفية إصلاح أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز

هل سئمت من أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز التي تعيق سير عملك؟ اتبع حلولنا الخبيرة خطوة بخطوة لاستعادة مزامنة المهام بسلاسة بين تيمز، وبلانييه، وقائمة المهام. حلول سريعة لراحة فورية!

كيفية مسح ذاكرة التخزين المؤقت لبرنامج مايكروسوفت تيمز لإصلاح مشاكل الأداء

كيفية مسح ذاكرة التخزين المؤقت لبرنامج مايكروسوفت تيمز لإصلاح مشاكل الأداء

هل تواجه مشكلة في بطء تطبيق مايكروسوفت تيمز؟ تعرّف على كيفية مسح ذاكرة التخزين المؤقت لتطبيق مايكروسوفت تيمز خطوة بخطوة لحل مشاكل الأداء، والبطء، والتعطل، وتحسين السرعة على أنظمة ويندوز، وماك، والويب، والهواتف المحمولة. حلول سريعة وفعّالة!

كيفية إصلاح أخطاء تشغيل الوسائط في مايكروسوفت تيمز عام 2026

كيفية إصلاح أخطاء تشغيل الوسائط في مايكروسوفت تيمز عام 2026

هل سئمت من مشاكل تشغيل الوسائط في مايكروسوفت تيمز التي تُفسد اجتماعاتك لعام 2026؟ اتبع دليلنا المُفصّل خطوة بخطوة لإصلاح مشاكل الصوت والفيديو والمشاركة بسرعة - دون الحاجة لأي مهارات تقنية. تعاون سلس بانتظارك!

كيفية إصلاح خطأ مايكروسوفت تيمز رقم 1200 على الهاتف (iOS/Android)

كيفية إصلاح خطأ مايكروسوفت تيمز رقم 1200 على الهاتف (iOS/Android)

هل سئمت من خطأ مايكروسوفت تيمز رقم 1200 الذي يتسبب في انقطاع مكالماتك الهاتفية؟ اكتشف حلولاً سريعة وبسيطة لأنظمة iOS وAndroid للعودة إلى العمل الجماعي بسلاسة وسرعة - دون الحاجة إلى أي مهارات تقنية!

حل مشكلة إعدادات بروكسي مايكروسوفت تيمز

حل مشكلة إعدادات بروكسي مايكروسوفت تيمز

هل تواجه مشكلة في إعدادات بروكسي مايكروسوفت تيمز؟ اكتشف خطوات فعّالة لحل هذه المشكلة. امسح ذاكرة التخزين المؤقت، وعدّل إعدادات البروكسي، واستمتع بمكالمات سلسة في دقائق معدودة مع دليلنا المتخصص.

كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح

كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح

تعلّم كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح من خلال دليلنا المفصل خطوة بخطوة. عالج الأخطاء الشائعة، واضمن الأمان، وقم بإدارة تيمز بسهولة تامة للمسؤولين في كل مكان.

أين تقويم فريقي؟ حل مشكلات المزامنة

أين تقويم فريقي؟ حل مشكلات المزامنة

هل تواجه مشكلة في مزامنة تقويم Teams الخاص بك؟ إليك دليلًا خطوة بخطوة لحل مشاكل المزامنة في Microsoft Teams. استعد عرض التقويم وقم بالمزامنة بسهولة تامة - نصائح الخبراء متوفرة هنا!