سؤال

لديّ مرافق C ++ التي أرغب في تنفيذها إلى شبكة النقل. كنت أتساءل عما إذا كانت هناك أدوات لتطبيق C ++ إلى C#؟

أتصور أن أي أداة تلقائية ستجعل أي رمز ، لذلك ربما ، يجب أن أسأل أيضًا عما إذا كانت هذه فكرة جيدة أم لا؟

هل كانت مفيدة؟

المحلول

السؤال الأفضل هو لماذا ستشعر على الإطلاق مجرد رمز عمل المنفذ دون الحصول على قيمة مضافة (أي الميزات الجديدة)؟ سيكون الجهد تقريبًا أكثر صعوبة ويستغرق وقتًا أطول مما تتوقع. أفضل ، استخدم العديد من إمكانيات .NET للاتصال برمز C ++ الخاص بك من C#. ركز على إضافة ميزات جديدة في C#، ولكن لا تضيع الوقت في نقل رمز العمل.

نصائح أخرى

  1. لوحة المفاتيح.
  2. الفأر.
  3. شاشة.
  4. قهوة.
  5. البحث التعبير المنتظم واستبداله.

بالتأكيد ، إنه ملف سوق حيوي. الانتقال من C ++ إلى C# يمنحك شيئًا ربما ترجمة نظيفة. إن جعل الأمر يعمل في الواقع يتطلب خطًا على حدة ، "يا Gawd سأطلق النار على جهد Tomorow". ymmv.

كان ينبغي أن يكون هذا تعليقا. لكن ليس لدي بيانات اعتماد كافية لنشر تعليق. هذا ليس ذا صلة بالضبط بسؤالك. اعتقدت أنه سيكون مفيدًا لك.

C ++ -> C#: ما تحتاج إلى معرفته للانتقال من C ++ إلى C#

شركتي، التصاميم الدلالية لديه أداة تتحول من C ++ إلى C#. إنه يتعامل مع تصميمات اللغة الأساسية للتحويل من C ++ (إعلانات البيانات/الفئة ، والبيانات القابلة للتنفيذ) إلى C#. تعتمد أداة الترجمة على مجموعة أدوات إعادة هندسة برامج DMS.

يحتاج إلى تخصيص للتعامل مع ترجمة بنيات غريبة (COM Calls ، APIs المخصصة ، ...) إلى C#. أي أداة قد تجدها ستحتاج إلى مثل هذا التخصيص ؛ لا يمكن لأي أداة خارج الجرف معالجة مجموعتك الكاملة من الظروف المحددة.

ماذا عن برنامج التحويل البرمجي C ++/CLI ، والذي ينتج تجميعات .NET من رمز C ++. في النهاية سترغب في إعادة صياغة نقاط الدخول لقبول أنواع .NET (على سبيل المثال System::String بدلا من الكلاسيكية char *) ، لكنك ستصل إلى .NET أسرع بكثير من خلال عدم استخدام C#. هناك أيضًا تحويلات تلقائية بين C ++/CLI و C#، ولكن فقط بعد أن يتم تحديد رمز C ++ (التحويل المذكور أعلاه إلى System::String, generic<typename T> System::Collections::Generic::List, ، إلخ.)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top