كيفية عرض نوع المتغير في Rust؟ (مشابه لـ type() في Python)
مرحباً بالجميع! لقد بدأت للتو في تعلم Rust وواجهت مشكلة في التصحيح. في Python، اعتدت استخدام `type(variable)` أو `print(type(variable))` لمعرفة بسرعة نوع البيانات المخزنة في المتغير. هذا مفيد جداً عند العمل مع هياكل ديناميكية أو عندما تريد فقط التأكد من أن المترجم استنتج النوع الصحيح.
في Rust، بالطبع، هناك كتابة ثابتة (static typing)، لكن أحياناً أكتب كوداً مع عموميات (generics) أو أستخدم traits، وأود في مرحلة التصحيح (debug) عرض النوع المحدد الذي تم الحصول عليه في وقت التشغيل. على سبيل المثال، لدي هذا الكود:
```rust
fn main() {
let x = 42;
let y = "hello";
let z = vec![1, 2, 3];
// كيف يمكنني عرض أنواع x, y, z؟
// print_type(x);
// print_type(y);
// print_type(z);
}
```
لقد جربت استخدام `std::any::type_name` — سمعت أن هناك هذه الدالة، لكنني لا أعرف كيفية تطبيقها بشكل صحيح. كما رأيت أنه يمكن استخدام الماكرو `type_of` من crate `std`، لكن لم ينجح معي.