حاوية تخزين تسلسلية مُدارة ديناميكيًا مع دعم مخصصات متعددة الأشكال (polymorphic allocators) للتطبيقات التكيفية.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 221750794e81المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
حاوية تخزين تسلسلية مُدارة ديناميكيًا مع دعم مخصصات متعددة الأشكال (polymorphic allocators) للتطبيقات التكيفية.
ara::core::Vector هي حاوية تسلسلية لـ AUTOSAR Adaptive Platform، توفر مصفوفات ديناميكية مع دعم مخصصات متعددة الأشكال [SWS_CORE_01303]. تتيح الفئة الإدراج المرن للعناصر وإدارتها وعنونتها بالوصول العشوائي عبر المكررات أو معاملات الوصول في ذاكرة متصلة. وبدلاً من استثناءات C++ القياسية التقليدية، يشير التنفيذ إلى انتهاكات الحدود عبر انتهاكات خاصة بالمنصة مثل IsoStdOutOfRangeViolation[SWS_CORE_01354]. ويُرجح أن تؤدي عمليات الوصول غير الصحيحة خارج الشروط المسبقة المحددة إلى سلوك غير محدد. سؤال Q-656c6bf029de714e (مفتوح)
السياق
تمثل الفئة ara::core::Vector تنفيذًا لحاوية تسلسلية في AUTOSAR Adaptive Platform، يستند إلى std::pmr::vector. تدير الفئة عناصر من النوع value_type[SWS_CORE_01302] في نطاق ذاكرة متصل وتتفاعل بشكل مباشر مع التطبيق بالإضافة إلى مخصص قابل للتكوين من النوع allocator_type[SWS_CORE_01303]. ومن خلال دمج المخصصات متعددة الأشكال، تتيح الفئة إدارة محددة (deterministic) وفعالة من حيث استهلاك الموارد للذاكرة. يمكن الاستعلام عن المخصص الأساسي عبر الدالة get_allocator[SWS_CORE_01331]. وللتضمين في خوارزميات C++ القياسية، توفر الفئة تعريفات أنواع أساسية مثل pointer[SWS_CORE_01304]، const_pointer[SWS_CORE_01305]، reference[SWS_CORE_01306]، const_reference[SWS_CORE_01307]، size_type[SWS_CORE_01308] و difference_type[SWS_CORE_01309].
دورة الحياة
يتم إنشاء النسخة عبر مجموعة واسعة من المنشئات:
إنشاء افتراضي بدون عناصر [SWS_CORE_01318]، وهو noexcept مشروطًا، اعتمادًا على المخصص.
تحديد صريح لنسخة مخصص [SWS_CORE_01319] كتهيئة آمنة من الاستثناءات مضمونة (noexcept).
يمكن نقل علاقات الملكية عبر النسخ أو النقل. ينسخ منشئ النسخ [SWS_CORE_01314] ومعامل الإسناد بالنسخ [SWS_CORE_01315] البيانات ويكونان noexcept مشروطًا، بشرط أن يكون نوع العنصر قابلاً للنسخ دون استثناءات؛ وتتوفر بشكل تكميلي حمولة زائدة للنسخ مع مخصص [SWS_CORE_01323]. ويتيح منشئ النقل [SWS_CORE_01316] ومعامل الإسناد بالنقل [SWS_CORE_01317] انتقالاً للملكية موفرًا للموارد، ويعتمد ضمان Noexcept الخاص به على خصائص المخصص؛ كما يوجد هنا أيضًا متغير مع إسناد المخصص [SWS_CORE_01324]. ولإعادة التعيين اللاحقة، تُستخدم الحمولات الزائدة للدوال assign[SWS_CORE_01328][SWS_CORE_01329][SWS_CORE_01330] بالإضافة إلى معامل الإسناد لقوائم التهيئة [SWS_CORE_01327].
يمكن تبادل محتويات متجهين عبر swap[SWS_CORE_01374]. وعند استدعاء clear[SWS_CORE_01375]، يتم تدمير كافة العناصر المتضمنة، ولكن يتم الاحتفاظ بالسعة المحجوزة. وفي نهاية دورة الحياة، يقوم الهادم ~Vector[SWS_CORE_01326] بتحرير كافة الموارد؛ وهو مُعلن كـ noexcept بشكل مضمون.
مسار الاستخدام
يتضمن مسار الاستخدام النموذجي إنشاء النسخة، والتخصيص المسبق، والملء، بالإضافة إلى الوصول اللاحق:
الإنشاء والحجز: يتم إنشاء النسخة، ويفضل أن يكون ذلك مع تمرير مخصص [SWS_CORE_01319]. وفي حال كانت السعة المستهدفة معروفة، يمكن استدعاء reserve[SWS_CORE_01347] مسبقًا لتجنب عمليات إعادة التخصيص الديناميكية اللاحقة.
خلافًا لسلوك C++ القياسي، تشير ara::core::Vector إلى حالات الخطأ عبر انتهاكات خاصة بالمنصة بدلاً من استثناءات C++ العادية:
انتهاك النطاق: إذا تم تمرير فهرس n >= size() عند at، فسيتم إطلاق IsoStdOutOfRangeViolation بدلاً من std::out_of_range[SWS_CORE_01354][SWS_CORE_01355].
خطأ في الطول: إذا طلب استدعاء resize حجمًا sz > max_size()، فسيتم إطلاق IsoStdLengthErrorViolation بدلاً من std::length_error[SWS_CORE_01350][SWS_CORE_01351]. وبالمثل، تطلق reserve انتهاك IsoStdLengthErrorViolation عند طلب حجم غير مسموح به [SWS_CORE_01347].
وصول غير مدقق: لا يتحقق الوصول المباشر عبر operator[][SWS_CORE_01352][SWS_CORE_01353] من حدود النطاق. ويؤدي الاستدعاء خارج النطاق الصالح إلى انتهاك الشروط المسبقة ويُرجح أن يؤدي إلى سلوك غير محدد. سؤال (مفتوح)
except for the following deviations: 1. Function is conditionally noexcept Implementation {<may-throw-on-allocate>} shall be an implementation-defined type ≙ [vector]
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 196b7382f846المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام وسياق الاستدعاء
تستبدل الدالة العضو القالبية assign لـ ara::core::Vector المحتوى الحالي للمتجه بعناصر النطاق [first, last) وفقاً للاستخدام المقابل في std::vector[SWS_CORE_01328]. تم تعريف الدالة في ملف الترويسة #include "ara/core/vector.h"، وتقبل مكررَي إدخال ولا تُرجع أي قيمة (void) [SWS_CORE_01328].
معالجة الأخطاء وأمان الاستثناءات
تم تصنيف دالة التعيين على أنها غير آمنة ضد الاستثناءات (not exception safe) [SWS_CORE_01328]. وإذا حدث استثناء أثناء معالجة العناصر أو أثناء عمليات تخصيص الذاكرة الداخلية الضرورية، فقد تظل الحاوية في حالة غير مكتملة دون ضمانات أمان محددة.
التزامن والشروط الحدية
بالنسبة للاستدعاءات المتزامنة، يُرجح أن تكون هناك حاجة إلى مزامنة خارجية عند الاستخدام المتزامن لنفس النسخة من ara::core::Vector، نظراً لأن المواصفة لا تضمن الأمان الخيطي. سؤال Q-5ada879738b3856d (مفتوح) الشرط الأساسي للتنفيذ الخالي من الأخطاء هو أيضاً أن يمتد first وlast عبر نطاق مكرر صالح.
التفاعل في الوحدة core
بالإضافة إلى تعيين النطاق عبر المكررات، تتوفر في ara::core::Vector تحميَلات زائدة بالعدد والقيمة المرجعية [SWS_CORE_01329] وكذلك لـ std::initializer_list<T>[SWS_CORE_01330]، والتي تم التصريح عنها أيضاً بأنها غير آمنة ضد الاستثناءات. وتوجد أنماط تعيين مماثلة أيضاً في سياق الوحدة لـ ara::core::BasicString[SWS_CORE_03091].
تم إنشاء ملاحظة الاستخدام هذه تلقائياً وتستند حصرياً إلى بيانات المواصفة R25-11.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: c2495d7f215cالمصدرأسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تنتمي الدالة assign إلى فئة الحاوية ara::core::Vector وتوفر عبر ملف الرأس #include "ara/core/vector.h"[SWS_CORE_01329]. ومن خلال التوقيع void assign (size_type n, const T &u);، تستبدل المحتوى الحالي للمتجه بالكامل بـ n من العناصر ذات القيمة u. ويتم الاستدعاء تزامنيًا ولا يقدم أي قيمة معادة (void). ووفقًا للمواصفة، يتبع السلوك الاستخدام المقابل في الحاوية القياسية [vector][SWS_CORE_01329]، وهو ما يعني على الأرجح دلالات std::vector::assign. سؤال Q-3630162224047ee0 (مفتوح)
معالجة الأخطاء
فيما يتعلق بالسلامة ضد الأعطال، صُنفت الدالة صراحةً بأنها not exception safe[SWS_CORE_01329]. لا يتم تحديد رموز خطأ خاصة بـ AUTOSAR أو فئات أخطاء أو رسائل إلى DET أو DEM. إذا حدث استثناء أثناء تخصيص الذاكرة أو عند تعيين العناصر، فمن المحتمل ألا تقدم الدالة أي ضمانات لاستعادة الحالة الأصلية للكائن. سؤال Q-f4eb9afa74847bf7 (مفتوح)
التزامن والقيود
نظرًا لأن assign تعدل حالة نسخة الحاوية وسعتها المحتملة، فإن الاستدعاء غير قابل لإعادة الدخول على النسخة نفسها. وفي ظل غياب تعهدات خاصة بأمان خيوط المعالجة في المواصفة، يُرجح ألا يكون الوصول المتزامن للقراءة أو الكتابة إلى كائن Vector نفسه آمنًا بالنسبة لخيوط المعالجة دون مزامنة خارجية. سؤال Q-1df95afd2340ec57 (مفتوح)
تفاعل
تشكل الدالة جنبًا إلى جنب مع تحميلات زائدة أخرى للفئة ara::core::Vector الواجهة البرمجية لإعادة تعيين محتويات المتجه:
تعيين قائم على المكرر عبر النطاق assign(InputIterator first, InputIterator last) وفقًا لـ [SWS_CORE_01328].
تعيين عبر قائمة تهيئة assign(std::initializer_list<T>) وفقًا لـ [SWS_CORE_01330].
يشترك كلا التحميلين الزائدين البديلين مع [SWS_CORE_01329] في خاصية كونهما محددين كـ not exception safe.
أُنشئ هذا النص بواسطة ذكاء اصطناعي وهو مخصص كدليل توجيهي فقط. وتُعد المواصفات الواردة في وثائق AUTOSAR ملزمة حصرياً.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a53aaf2941a9المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تستبدل الدالة العضو assign للفئة ara::core::Vector كامل المحتوى السابق لنسخة المتجه تزامنيًا بعناصر قائمة التهيئة المقدمة std::initializer_list<T> ([SWS_CORE_01330]). ويتبع السلوك الوظيفي في ذلك الاستخدام المقابل للحاوية القياسية في [vector] ([SWS_CORE_01330]). ليس للدالة قيمة معادة (void) ويتم التصريح عنها عبر الرأس ara/core/vector.h ([SWS_CORE_01330]).
بالنسبة لمعالجة الأخطاء، حُدد أن الطريقة مصنفة بأنها not exception safe ([SWS_CORE_01330]). تفسير: إذا حدث استثناء أثناء تخصيص الذاكرة أو أثناء نسخ العناصر أو نقلها، فمن المحتمل ألا يوفر التنفيذ أمانًا قويًا ضد الاستثناءات؛ ويُرجح أن يظل المتجه في حالة متغيرة أو غير مكتملة. سؤال Q-ac196ecfba85d821 (مفتوح)
في إطار التفاعل مع واجهات أخرى لـ ara::core::Vector، تكمل الدالة تحميلات التعيين الزائدة البديلة مثل التهيئة عبر نطاقات المكرر ([SWS_CORE_01328]) والتعيين المتكرر لقيمة مفردة ([SWS_CORE_01329]). وتشترك جميع متغيرات assign هذه في خاصية عدم كونها آمنة ضد الاستثناءات. وتوجد دلالة تعيين قابلة للمقارنة باستخدام std::initializer_list ضمن المكتبة الأساسية أيضًا في ara::core::BasicString ([SWS_CORE_03092]).
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R25-11.
As per corresponding usage in [vector] except for the following deviations: 1. if (n >= size()) IsoStdOutOfRangeViolation is raised instead of std:: out_of_range
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 7e8643f8168aالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام والدلالات
توفر الدالة العضو at وصول قراءة متزامنًا إلى عنصر من الحاوية ara::core::Vector عند الفهرس المحدد n وتُرجع const_reference إلى العنصر [SWS_CORE_01354]. التصريح متاح عبر ملف الرأس ara/core/vector.h[SWS_CORE_01354]. تتوافق الدلالات مع دالة std::vector::at القياسية من معيار C++، لكنها تختلف في معالجة الأخطاء [SWS_CORE_01354].
معالجة الأخطاء والشروط الحدية
إذا طُلب فهرس يصل إلى حجم الحاوية أو يتجاوزه (n >= size())، فسيتم إطلاق IsoStdOutOfRangeViolation بدلاً من الاستثناء القياسي std::out_of_range[SWS_CORE_01354]. تم التصريح عن الدالة كـ not exception safe[SWS_CORE_01354]. تفسير: نظرًا لعدم طرح أي استثناء C++، فمن المرجح أن يؤدي إطلاق الانتهاك إلى إنهاء تدفق البرنامج، والذي قد يتفاعل على الأرجح مع آليات المعالجة مثل AddAbortHandler[SWS_CORE_00054]. سؤال Q-2182d648ff4a28b8 (مفتوح)
التفاعل في الموديول
لعمليات الوصول المعدلة، يتوفر التحميل الزائد غير الثابت مع القيمة المعادة reference، والذي يتبع نفس مسار الخطأ [SWS_CORE_01355]. يوجد نفس سلوك الاختلاف مع IsoStdOutOfRangeViolation أيضًا في أنواع بيانات Core أخرى مثل ara::core::Array[SWS_CORE_01273][SWS_CORE_01274] وara::core::BasicString[SWS_CORE_03063].
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا بناءً على مواصفة AUTOSAR الإصدار R25-11.
As per corresponding usage in [vector] 1. if (n >= size()) IsoStdOutOfRangeViolation is raised instead of std:: out_of_range
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: dee504db9fffالمصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تتيح دالة العضو at للفئة ara::core::Vector ([SWS_CORE_01355])، المتوفرة عبر ملف الرأس #include "ara/core/vector.h"، إمكانية الوصول المفهرس للقراءة والكتابة إلى عناصر فردية في متجه. تقبل الدالة فهرس موضع n من النوع size_type وتُرجع مرجعًا قابلاً للتعديل (reference) إلى العنصر في الموضع المحدد. تتبع الدلالات التنفيذ المقابل في [vector]. تفسير: نظرًا لأن الواجهة معلنة بشكل متزامن وفقًا لمعيار C++، فمن المرجح أن يتم التنفيذ بصورة حاجزة مباشرة في سياق خيط التنفيذ المستدعي. سؤال Q-81f43622c244ce91 (مفتوح)
على عكس المتجه القياسي في ISO-C++، تطلق الدالة عند تجاوز الفهرس (n >= size()) الانتهاك IsoStdOutOfRangeViolation بدلاً من الاستثناء القياسي std::out_of_range ([SWS_CORE_01355]). صُنفت الدالة في المواصفة على أنها غير آمنة من حيث الاستثناءات (not exception safe) ([SWS_CORE_01355]). تفسير: نظرًا لعدم تحديد آليات مزامنة للوصول إلى هذا المتجه، فمن المرجح ألا يكون الوصول المتزامن غير المحمي إلى نفس المثيل آمنًا من حيث خيوط التنفيذ. سؤال Q-e65ae0c574610719 (مفتوح)
للوصول المخصص للقراءة فقط الثابتة، يتوفر التحميل الزائد const_reference at(size_type n) const، والذي يبلّغ أيضًا عن IsoStdOutOfRangeViolation ويُعد غير آمن من حيث الاستثناءات ([SWS_CORE_01354]). وتستخدم دلالات الانتهاك نفسها عند الوصول الخاطئ حاوياتٌ وأنواعٌ ذات صلة في المكتبة الأساسية، بما في ذلك ara::core::Array ([SWS_CORE_01273]، [SWS_CORE_01274])، وara::core::Map ([SWS_CORE_01456]، [SWS_CORE_01457])، وara::core::StringView ([SWS_CORE_02133])، بالإضافة إلى ara::core::BasicString ([SWS_CORE_03063]، [SWS_CORE_03064]).
تم إنشاء هذا النص بواسطة ذكاء اصطناعي ويُستخدم كدليل إرشادي. والمواصفات الواردة في وثائق AUTOSAR هي وحدها الملزمة.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: de070e9c410aالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام والدلالات
تُستخدم الطريقة clear() للفئة ara::core::Vector لتفريغ المتجه بالكامل وفقًا لـ [SWS_CORE_01375]. الدالة مُعلنة في الترويسة ara/core/vector.h، وقابلة للاستدعاء بشكل متزامن، ولا تأخذ معلمات ولا تُرجع أي قيمة (void). وتتوافق دلالاتها الوظيفية مع المواصفة المقابلة لـ [vector]. تفسير: يُرجَّح أن يعني هذا أنه يتم تدمير جميع العناصر الموجودة في المتجه وينخفض عدد العناصر إلى 0، مع احتمال بقاء سعة الذاكرة المخصصة دون تغيير. سؤال Q-ecde315e61455c32 (مفتوح)
معالجة الأخطاء والأمان من الاستثناءات
ينطبق على الاستدعاء التوصيف noexcept والتصنيف كآمن من الاستثناءات (exception safe) وفقًا لـ [SWS_CORE_01375]. وبما أن الطريقة مضمونة لعدم رمي استثناءات، فلا توجد رموز خطأ محددة ولا يتم إرسال رسائل خطأ DET أو DEM في حالة الخطأ.
التفاعل مع الحاويات ذات الصلة
يتم نقل مفهوم دالة clear() الآمنة من الاستثناءات في ara::core بشكل متسق إلى هياكل بيانات أخرى. وهكذا توفّر ara::core::Map في الترويسة ara/core/map.h طريقة clear() مطابقة وفقًا لـ [map][SWS_CORE_01485]. وبالمثل، توفّر ara::core::BasicString في الترويسة ara/core/string.h عملية clear() مكافئة وفقًا لـ [basic.string][SWS_CORE_03057].
أُنشئت ملاحظة الاستخدام هذه تلقائيًا وتستند حصريًا إلى مواصفات الحمولة المُمرَّرة.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: f17de2d5c630المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
توفر الدالة العضو crbegin الخاصة بـ ara::core::Vector وفقًا لـ [SWS_CORE_01342] مكررًا عكسيًا ثابتًا (const_reverse_iterator) يشير إلى العنصر الأخير في التسلسل. يتم الاستدعاء بشكل متزامن وبدون معلمات عبر الترويسة ara/core/vector.h. ويتطابق السلوك مع مواصفات مكتبة C++ القياسية الأساسية لـ [vector]. وفي حالة وجود حاوية فارغة، من المحتمل أن يطابق المكرر المُرجع قيمة crend() (تفسير يستند إلى [vector]). سؤال Q-a2badba87f86486c (مفتوح)
فيما يتعلق بمعالجة الأخطاء، تم تزويد الواجهة بالمعرّف noexcept وأُعلنت على أنها آمنة من الاستثناءات (exception safe) ([SWS_CORE_01342]). لا تطرح الاستدعاءات أي استثناءات ولا تبلّغ عن أخطاء لآليات مراقبة وقت التشغيل أو التشخيص.
فيما يتعلق بالتزامن والقيود، تم تأهيل الطريقة كـ const. من المحتمل أن يكون الوصول المتزامن للقراءة إلى نفس المثيل من عدة مسارات تنفيذ قابلاً لإعادة الدخول وآمنًا مؤشريًا (thread-safe)، ما لم تُنفّذ عمليات كتابة متزامنة على المتجه (تفسير مماثل لنموذج حاويات C++). سؤال Q-094ba5878c1adc74 (مفتوح)
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: b6ed373b1e91المصدر
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
توفر الدالة العضو crend للفئة ara::core::Vector مكررًا عكسيًا ثابتًا يشير إلى العنصر النظري السابق للعنصر الأول في المتجه [SWS_CORE_01343]. وتتبع الدلالاتُ الاستخدامَ المقابل في معيار C++ لـ std::vector («As per corresponding usage in [vector]») [SWS_CORE_01343].
الاستخدام والسلوك
سياق الاستدعاء والمعلمات: الطريقة بدون معلمات ومُعلنة كـ const، بحيث يمكن استدعاؤها بشكل متزامن على مثيلات ثابتة وغير ثابتة لـ ara::core::Vector[SWS_CORE_01343].
القيمة المُرجعة: يتم إرجاع const_reverse_iterator يحدد النهاية المنطقية لتكرار موجه إلى الخلف [SWS_CORE_01343].
معالجة الأخطاء والأمان من الاستثناءات
تم تحديد الدالة بـ noexcept وتُعتبر وفقًا للمواصفات آمنة من الاستثناءات («exception safe») [SWS_CORE_01343]. لا يتم إرجاع أي رموز خطأ محددة، ولا تحدث أي استثناءات.
التفاعل مع الحاويات ذات الصلة
يتم توفير مفهوم المكرر العكسي الثابت لنقطة النهاية لتكرار عكسي بشكل موحد عبر الحاويات في ara::core. وتوجد واجهات مماثلة بمعالجة استثناءات متطابقة (noexcept) من بين أمور أخرى لـ ara::core::Array[SWS_CORE_01261]، وara::core::Map[SWS_CORE_01451]، وara::core::Span[SWS_CORE_01979]، وara::core::StringView[SWS_CORE_02127]، وكذلك ara::core::BasicString[SWS_CORE_03050].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي وتستند إلى متطلبات المواصفات من الإصدار R25-11.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: bec6ec9ae706المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُدرج الدالة emplace عنصرًا في الموضع المحدد مباشرة في ara::core::Vector من خلال إعادة توجيه الوسائط الممررة [SWS_CORE_01366]. يوجد التصريح في ملف الرأس #include "ara/core/vector.h" ويتبع الاستخدام المطابق في [vector][SWS_CORE_01366].
الاستخدام
يتم استدعاء emplace بشكل متزامن ويقبل كمعامل مكرر الموضع position من النوع const_iterator بالإضافة إلى حزمة معاملات args من النوع Args&&...[SWS_CORE_01366]. كقيمة معادة، تُرجع الدالة iterator إلى العنصر المنشأ حديثًا [SWS_CORE_01366].
معالجة الأخطاء والتزامن
بالنسبة لـ emplace في ara::core::Vector، تم تحديد أمان الاستثناءات صراحةً على أنه not exception safe[SWS_CORE_01366]. لم يتم تعريف رموز خطأ محددة أو رسائل DET أو DEM في المعيار. تفسير: في ظل غياب آليات المزامنة الداخلية، من المرجح ألا يكون الاستدعاء المتزامن لـ emplace على نفس المثيل آمنًا بالنسبة لمؤشرات الترابط دون حماية خارجية. سؤال Q-d72278df37e86c8a (مفتوح)
تفاعل
ضمن ara::core، يختلف أمان الاستثناءات لـ emplace حسب النوع:
في ara::core::Map، تم تعريف emplace أيضًا على أنه not exception safe، ولكنه يُرجع std::pair<iterator, bool>[SWS_CORE_01458].
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: ee506cbddbcfالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تُستخدم دالة القالب emplace_back للفئة ara::core::Vector وفقًا لـ [SWS_CORE_01362] لإنشاء عنصر جديد مباشرةً في نهاية المتجه. ويتم تمرير معاملات التمرير Args&&... args مباشرةً إلى منشئ نوع العنصر وفقًا لدلالات [vector]. وكقيمة إرجاع، تُرجع الدالة مرجعًا (reference) إلى العنصر المُنشأ حديثًا. للاستخدام، يجب تضمين الترويسة #include "ara/core/vector.h"[SWS_CORE_01362].
معالجة الأخطاء والأمان من الاستثناءات
فيما يتعلق بالسلامة من الاستثناءات، أُعلن عن العملية صراحةً في [SWS_CORE_01362] على أنها not exception safe. ولا تحدد المواصفة رموز أخطاء محددة أو قيم تراجع أو رسائل إلى خدمات الأخطاء مثل DET أو DEM.
القيود والسلوك
نظرًا لخاصية not exception safe والاستناد إلى [vector]، فمن المحتمل في حالة حدوث خطأ، على سبيل المثال عند فشل تخصيص الذاكرة أو الإنشاء، ألا يكون هناك ضمان للحفاظ على حالة الحاوية السابقة (تفسير). سؤال Q-ca44b2f27d8ae1c8 (مفتوح) لذلك يجب على المستدعين التأكد من تجنب شروط الخطأ المحتملة مسبقًا.
تم إنشاء هذا النص بواسطة ذكاء اصطناعي وهو مخصص للإرشاد والتوجيه.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 64de7076f3b2المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم الدالة erase للفئة ara::core::Vector وفقًا لـ [SWS_CORE_01372] للإزالة المتزامنة لعنصر مفرد في الموضع المحدد بواسطة المعلمة position (const_iterator). وكقيمة مُرجعة، فإنها تُرجع iterator يشير إلى العنصر التالي أو نهاية الحاوية إذا كان العنصر المحذوف في الموضع الأخير، وفقًا للدلالات المشار إليها في [vector]. الدالة مُعلنة في ملف الترويسة #include "ara/core/vector.h".
فيما يتعلق بمعالجة الأخطاء، تم تصنيف العملية صراحةً في المواصفات على أنها غير آمنة من الاستثناءات («not exception safe») [SWS_CORE_01372]. لم يتم تعريف قيم إرجاع أخطاء محددة أو رسائل DET أو DEM؛ وبالتالي من المرجح أن تؤدي المكررات غير الصالحة أو غير القابلة لإلغاء الإسناد إلى سلوك غير محدد. سؤال Q-efa4c40e48a6f98d (مفتوح) وبسبب إزاحة العناصر في المتجه، يُفترض كتفسير: أن تصبح المكررات والمراجع اللاحقة غير صالحة، كما يتوافق مع الدلالات القياسية لـ [vector].
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 494dc0882ae6المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم الدالة العضو erase للفئة ara::core::Vector لإزالة نطاق من العناصر من المتجه وفقًا للمواصفات [SWS_CORE_01373]. الإعلان متاح عبر الترويسة ara/core/vector.h. وتتبع الدلالات الاستخدام المقابل في المتجه القياسي («As per corresponding usage in [vector]»). يتم تمرير مكررين first وlast كمعلمات لتحديد النطاق المراد حذفه؛ ويتم إرجاع iterator يشير إلى العنصر التالي.
فيما يتعلق بمعالجة الأخطاء والسلامة من الاستثناءات، تم تصنيف العملية صراحةً في المواصفات كـ «not exception safe» [SWS_CORE_01373]. لا يتم تعريف رموز خطأ محددة أو انتهاكات خطأ (Violations) لهذه الدالة على عكس عمليات الحاوية الأخرى. وإذا حدث خطأ أثناء التنفيذ، فمن المحتمل أن يترك ذلك الحاوية في حالة غير متسقة. سؤال (مفتوح)
فيما يتعلق بالتزامن والقيود، تلتزم المواصفات الصمت؛ ومع ذلك، من المحتمل ألا تكون العمليات المُعدِّلة على ara::core::Vector قابلة لإعادة الدخول وتتطلب على الأرجح حماية خارجية في التشغيل متعدد مسارات التنفيذ. سؤال Q-07fc291a523a82f1 (مفتوح)
في إطار التفاعل مع واجهات أخرى لوحدة Core، تُكمّل هذه الدالة التحميل الزائد لإزالة عنصر مفرد في موضع معين بواسطة iterator erase(const_iterator position)[SWS_CORE_01372]. كما تم تعريف عمليات حذف النطاقات المقابلة وفقًا للنمط نفسه للحاويات الترابطية مثل ara::core::Map عبر [SWS_CORE_01483] وكذلك السلاسل النصية في ara::core::BasicString عبر [SWS_CORE_03104].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي استنادًا إلى AUTOSAR R25-11.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a3ba159fb66fالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تُستخدم دالة العضو insert من الفئة ara::core::Vector للإدراج المتزامن لعنصر في موضع محدد [SWS_CORE_01367]. وهي معرفة في ملف الرأس #include "ara/core/vector.h"[SWS_CORE_01367]. تأخذ الدالة كمعامل مكررًا position من النوع const_iterator يحدد الموضع المستهدف، بالإضافة إلى مرجع ثابت x للكائن المراد إدراجه من النوع const T &[SWS_CORE_01367]. قيمة الإرجاع هي iterator يشير إلى العنصر المُدرج حديثًا [SWS_CORE_01367]. ويتبع السلوك الوظيفي الاستخدام في المتجه القياسي («As per corresponding usage in [vector]») [SWS_CORE_01367].
معالجة الأخطاء والقيود
تصنف المواصفة الدالة صراحة بأنها غير آمنة من حيث الاستثناءات («not exception safe») [SWS_CORE_01367]. لم يتم تعريف رموز خطأ محددة، أو قيم إرجاع لحالات الخطأ، أو رسائل إلى DET أو DEM. تفسير: إذا فشل تخصيص الذاكرة الداخلي أو نسخ العنصر، فمن المرجح ألا يكون هناك ضمان للحفاظ على حالة الحاوية أو صلاحية المكررات. سؤال Q-d2b5552bb124d16e (مفتوح)
تفاعل
توجد داخل ara::core::Vector تحميلات زائدة متعددة لـ insert تتيح عمليات إدراج بديلة:
تحدد طرق insert المماثلة في الوحدة core أيضًا الحاويات الترابطية مثل ara::core::Map[SWS_CORE_01460] بالإضافة إلى فئات السلاسل النصية مثل ara::core::BasicString[SWS_CORE_03093].
تم إنشاء ملاحظة الاستخدام هذه آليًا. وتستند حصريًا إلى مواصفات إصدار AUTOSAR R25-11.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 60fc9467623bالمصدرأسئلة مفتوحة (3)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تم تعريف الطريقة insert وفقًا لـ [SWS_CORE_01368] في ملف الرأس #include "ara/core/vector.h" كدالة عضو للفئة ara::core::Vector. تُستخدم للإدراج المتزامن لعنصر عبر مرجع قيمة يمينية (T&& x) في الموضع السابق للمكرر position. وفقًا للإشارة إلى [vector]، من المرجح أن تنقل الدالة محتوى x بدلالات النقل إلى المتجه وتُرجع iterator إلى العنصر المُدرج حديثًا. سؤال Q-97f2551da8fd303f (مفتوح)
معالجة الأخطاء والقيود
تصنف المواصفة الدالة في [SWS_CORE_01368] على أنها not exception safe. لم يتم تعريف رموز خطأ محددة أو قيم إرجاع للإشارة إلى الخطأ أو رسائل إلى DET أو DEM. تفسير: إذا فشل تخصيص الذاكرة الداخلي أو نقل العناصر، فمن المرجح ألا يكون أمان الاستثناءات مضمونًا، مما قد يترك الحاوية في حالة غير متسقة أو يؤدي إلى الإنهاء. سؤال Q-297ef8ff6f6eb76b (مفتوح) علاوة على ذلك، من المحتمل عدم وجود حماية داخلية من التزامن، ولهذا يجب مزامنة عمليات الوصول المتزامنة خارجيًا.
تفاعل
يشكل متغير القيمة اليمينية (Rvalue) [SWS_CORE_01368] واجهة متماسكة مع تحميلات زائدة أخرى لـ insert في ara::core::Vector:
[SWS_CORE_01367]: إدراج قيمة بالنسخ باستخدام مرجع قيمة يسارية (const T& x).
[SWS_CORE_01369]: إدراج n من النسخ لقيمة (size_type n, const T& x).
[SWS_CORE_01370]: إدراج تسلسل عبر نطاق مكرر (InputIterator first, InputIterator last).
[SWS_CORE_01371]: إدراج قائمة باستخدام std::initializer_list<T>.
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR R25-11.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 7edeb5bda5f6المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تنتمي الدالة العضو insert من [SWS_CORE_01369] إلى الفئة ara::core::Vector ويتم توفيرها عبر ملف الترويسة #include "ara/core/vector.h". تُستخدم العملية المتزامنة لإدراج عدة عناصر متطابقة. تفسير: وفقًا للإشارة المحددة «As per corresponding usage in [vector]»، يُرجّح أن يُدرج الاستدعاء بالضبط n من نسخ القيمة الممررة x مباشرة قبل موضع المكرر position في المتجه، ويُعيد iterator يشير إلى أول عنصر جديد تم إدراجه. سؤال Q-c92add148c490868 (مفتوح)
فيما يتعلق بمعالجة الأخطاء والمتانة، صُنفت الدالة في [SWS_CORE_01369] صراحة بأنها «not exception safe». لا توجد رموز أخطاء AUTOSAR محددة أو رسائل إلى DET أو DEM مقررة لاستدعاء هذه الدالة.
لا تحتوي المواصفة على أي ضمانات خاصة بشأن شروط التزامن والاستدعاء. ومن المحتمل أن يتطلب تعديل الحاوية مزامنة خارجية كما هو الحال مع المتجهات القياسية، حيث يُرجّح ألا تكون عمليات الكتابة أو القراءة المتزامنة آمنة لخيوط المعالجة. سؤال (مفتوح)
داخل ara::core::Vector، وإلى جانب هذا التحميل الزائد للقيم المكررة، توجد متغيرات أخرى لـ insert:
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 1d6a2d4c594cالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُدرج الدالة العضو القالبية insert الخاصة بالحاوية المتسلسلة ara::core::Vector ([SWS_CORE_01370]) من ملف الترويسة #include "ara/core/vector.h" تسلسلًا من العناصر تزامنيًا في المتجه. ويُحدَّد النطاق المراد إدراجه عبر مُكرري الإدخال first وlast، ويُوضع مباشرةً قبل الموضع المُحدد بواسطة position (النوع const_iterator). وكقيمة إرجاع، تُعيد الدالة iterator يشير إلى أول عنصر تم إدراجه. وتصف المواصفة الدلالة الفنية بعبارة «As per corresponding usage in [vector]» ([SWS_CORE_01370])؛ تفسير: يُرجَّح أن يطابق هذا سلوك إدراج النطاق القياسي لـ std::vector. سؤال Q-c6cd06fb1964ead6 (مفتوح)
فيما يتعلق بمعالجة الأخطاء والمتانة، حُددت الدالة صراحةً بأنها not exception safe ([SWS_CORE_01370]). ولا تنص المواصفة على رموز أخطاء خاصة أو استثناءات أو رسائل إلى شاشات مراقبة الأخطاء والتشخيص (مثل DET أو DEM).
ضمن واجهة ara::core::Vector، يُكمّل هذا التحميل الزائد للنطاق دوال الإدراج الأخرى:
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 87bda45bd96fالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُدرج الدالة العضو التزامنية insert للفئة ara::core::Vector عناصر قائمة تهيئة في موضع محدد مسبقًا داخل الحاوية [SWS_CORE_01371]. وهي مُعلنة في ملف الترويسة ara/core/vector.h[SWS_CORE_01371]. وتتوقع الدالة كمعلمات مُكررًا position من النوع const_iterator يحدد موضع الإدراج، بالإضافة إلى il من النوع std::initializer_list<T>[SWS_CORE_01371]. وقيمة الإرجاع هي iterator يشير إلى أول عنصر تم إدراجه أو إلى position إذا كانت القائمة فارغة [SWS_CORE_01371].
فيما يتعلق بمعالجة الأخطاء والمتانة، تصنف المواصفة هذه العملية صراحة بأنها «not exception safe» [SWS_CORE_01371]. لا توجد رموز أخطاء AUTOSAR محددة أو رسائل خطأ (DET/DEM). تفسير: من خلال الإشارة «As per corresponding usage in [vector]»، يُرجح أن يطابق سلوك وقت التشغيل دلالات std::vector::insert[SWS_CORE_01371]، بما في ذلك إمكانية إعادة التخصيص وما يصاحبها من إبطال للمكررات الحالية. سؤال Q-67ac8e3de4d4ce7a (مفتوح) لم يتم تحديد آليات مزامنة خاصة للوصول المتزامن.
في الموديول core، تأتي الدالة في سياق عمليات إدراج أخرى لـ ara::core::Vector:
As per corresponding usage in [vector] except for the following deviations: 1. Function is conditionally noexcept Implementation {<may-throw-on-allocate>} shall be an implementation-defined type
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: deefee9625deالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام والدلالات
تخدم دالة العضو pop_back للحاوية ara::core::Vector الإزالة المتزامنة للعنصر الأخير [SWS_CORE_01365]. تم التصريح عن الدالة في ملف الرأس ara/core/vector.h ولها التوقيع void pop_back ()[SWS_CORE_01365]. تشير AUTOSAR صراحةً للسلوك الوظيفي إلى الاستخدام المقابل في [vector]، بحيث لا يتم تمرير أي معلمات ولا توجد قيمة إرجاع [SWS_CORE_01365].
معالجة الأخطاء والأمان من الاستثناءات
فيما يتعلق بمعالجة الأخطاء، توضح المواصفة الخاصية not exception safe[SWS_CORE_01365]. وبما أنه لم يتم تعريف رموز أخطاء أو قيم إرجاع أو آليات فحص محددة في حمولة البيانات (Payload)، فلا توجد معالجة أخطاء مدمجة للاستدعاءات غير المسموح بها [SWS_CORE_01365]. تفسير: قبل الاستدعاء، يجب على المتصل التأكد من أن المتجه ليس فارغاً؛ ويُرجح أن يؤدي الاستدعاء على نسخة فارغة إلى سلوك غير محدد بشكل مماثل لـ [vector]. سؤال Q-add313a489db4726 (مفتوح)
التفاعل والمتطلبات ذات الصلة
يوجد نمط مطابق في الفئة ara::core::BasicString من ara/core/string.h، والتي تزيل دالتها pop_back المحرف الأخير وفقاً لـ [basic.string] وتم تحديدها بالمثل على أنها not exception safe[SWS_CORE_03105]. يوحد كلا التعريفين تعديل هياكل البيانات المتسلسلة في الوحدة core[SWS_CORE_01365]، [SWS_CORE_03105].
تم إنشاء ملاحظة الاستخدام هذه بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR Adaptive R25-11.
As per corresponding usage in [vector] except for the following deviations: 1. Function is conditionally noexcept: (see [vector.modifiers])
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: a852a13f9301المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تُدرج دالة العضو push_back في نطاق ara::core::Vector عنصراً ممرراً عبر نسخه في نهاية الحاوية [SWS_CORE_01363]. وهي معرّفة عبر الرأس #include "ara/core/vector.h"، وتقبل مرجعاً إلى قيمة ثابتة const T &x وليس لها قيمة إرجاع (void) [SWS_CORE_01363]. يتم الاستدعاء بشكل متزامن في سياق المتصل.
معالجة الأخطاء وأمان الاستثناءات
تختلف المواصفة عن [vector] في أن الدالة تم التصريح عنها بأنها مشروطة noexcept: حيث يتم ضمان أنها غير طارحة للاستثناءات فقط إذا تحقق std::is_nothrow_copy_assignable<T>::value[SWS_CORE_01363]. وبناءً على ذلك، يتم تعريف أمان الاستثناءات على أنه «conditionally exception safe» [SWS_CORE_01363]. لم يتم تعريف رموز أخطاء محددة أو رسائل خطأ عبر DET أو DEM لهذه الدالة.
التفاعل والمتطلبات ذات الصلة
بالنسبة للكائنات القابلة للنقل، يوفر ara::core::Vector التحميل الزائد void push_back(T &&x)، وترتبط خاصية noexcept الخاصة به بشكل مماثل بـ std::is_nothrow_move_assignable<T>::value[SWS_CORE_01364]. وبالمقابل، لا يمتلك push_back في ara::core::BasicString أي ضمان Noexcept ويتم تصنيفه على أنه «not exception safe» [SWS_CORE_03083].
تفسير: يُفترض أن سلوك الذاكرة وإعادة التخصيص الداخليين عند الإدراج يسترشد، بصرف النظر عن التصريح المحدد noexcept، بمتطلبات معيار C++ لـ [vector]. سؤال Q-202fb07b334cde64 (مفتوح)
يستند إشعار الاستخدام هذا إلى مواصفة AUTOSAR Adaptive في الإصدار R25-11.
As per corresponding usage in [vector] except for the following deviations: 1. Function is conditionally noexcept: (see [vector.modifiers])
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 0ab7b8ba5428المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تخدم دالة العضو push_back من ara::core::Vector الإلحاق المتزامن لعنصر في نهاية المتجه باستخدام دلالات النقل ([SWS_CORE_01364]). يتم توفيرها عبر الرأس #include "ara/core/vector.h"، وتقبل مرجع Rvalue T &&x وليس لها قيمة إرجاع (void) ([SWS_CORE_01364]).
فيما يتعلق بمعالجة الأخطاء وسلوك الاستثناءات، تنطبق الخصائص التالية:
تم تصنيف الطريقة على أنها آمنة مشروطاً من الاستثناءات (conditionally exception safe) ([SWS_CORE_01364]).
يرتبط ضمان noexcept بالنوع: noexcept(std::is_nothrow_move_assignable<T>::value) ([SWS_CORE_01364]). إذا لم يتم التصريح عن معامل تخصيص النقل لـ T على أنه خالٍ من الاستثناءات، فمن المحتمل أن تحدث استثناءات أثناء عمليات تخصيص الذاكرة أو نقل العناصر. سؤال Q-3b8b58d0b218fe21 (مفتوح)
تتبع طريقة العمل الدلالات المعتادة في [vector]، ولكنها تختلف من خلال تصريح noexcept المشروط ([SWS_CORE_01364]). وبما أن العملية تعدل الحاوية، فمن المحتمل ألا تكون عمليات الوصول المتزامنة إلى النسخة نفسها آمنة لمؤشرات الترابط دون مزامنة خارجية. سؤال (مفتوح)
في تفاعل الواجهات، يُكمل متغير النقل هذا التحميل الزائد للنسخ push_back(const T &x) ([SWS_CORE_01363])، والمرتبط بشكل مماثل بـ is_nothrow_copy_assignable. ويجب تمييزه عن دالة العضو التي تحمل نفس الاسم في ara::core::BasicString ([SWS_CORE_03083])، والتي تُلحق محارف فردية ومحددة بأنها غير آمنة من الاستثناءات.
تم إنشاء ملاحظة الاستخدام هذه تلقائيًا وتستند إلى متطلبات المواصفة.
As per corresponding usage in [vector] except for the following deviations: 1. if (n < max_size()) IsoStdLengthErrorViolation is raised instead of std:: length_error
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 1fc59f941a26المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم دالة العضو reserve للفئة ara::core::Vector وفقاً لـ [SWS_CORE_01347] لحجز الذاكرة لنسخ المتجه. يتم استدعاؤها بشكل متزامن ويتم توفيرها عبر ملف الرأس ara/core/vector.h. تقبل الدالة المعلمة n من النوع size_type وليس لها قيمة إرجاع. يتوافق السلوك الأساسي مع الدلالات المعتادة لـ std::vector::reserve من معيار ISO-C++.
معالجة الأخطاء والانتهاكات
على خلاف معيار ISO-C++، لا يتم طرح استثناء من النوع std::length_error في حالة حدوث خطأ، بل يتم إطلاق IsoStdLengthErrorViolation[SWS_CORE_01347]. تذكر المواصفة الشرط n < max_size() لهذا الغرض، حيث يُفترض أن المقصود هو تجاوز السعة القصوى. سؤال Q-8d4dbf516b7b87b7 (مفتوح) بالإضافة إلى ذلك، تم التصريح صراحةً عن العملية وفقاً للمواصفة بأنها ليست آمنة من الاستثناءات (not exception safe) [SWS_CORE_01347].
التفاعل والشروط الحدية
يتوافق إطلاق IsoStdLengthErrorViolation مع مفهوم الأخطاء الموحد في ara::core ويوجد بشكل مماثل لدى ara::core::BasicString::reserve وفقاً لـ [SWS_CORE_03054]. ونظراً لأن استدعاء reserve يمكن أن يؤدي إلى عمليات إعادة تخصيص داخلية، فإن الدالة ليست آمنة لمؤشرات الترابط عند الوصول المتزامن إلى النسخة نفسها وتتطلب مزامنة خارجية.
تم إنشاء إشعار الاستخدام هذا بواسطة نظام ذكاء اصطناعي بناءً على مواصفة AUTOSAR R25-11.
As per corresponding usage in [vector] except for the following deviations: 1. if (sz > max_size()) IsoStdLengthErrorViolation is raised instead of std:: length_error
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: e1f4cdbd6da3المصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تضبط الدالة العضو resize عدد العناصر الموجودة في الحاوية تزامنيًا مع الحجم المستهدف المطلوب sz ([SWS_CORE_01350]). وهي تنتمي إلى الفئة ara::core::Vector ويتم تضمينها عبر ملف الرأس #include "ara/core/vector.h" ([SWS_CORE_01350]). ويعتمد السلوك الوظيفي على مواصفة ISO-C++ الخاصة بـ std::vector: إذا صغر حجم الحاوية، تُحذف العناصر الزائدة؛ وإذا كبر حجمها، تُنشأ عناصر إضافية عن طريق التهيئة بالقيمة.
في حالة الخطأ، تنحرف الدالة عن قصد عن سلوك المكتبة القياسية: إذا كان الحجم المطلوب sz أكبر من max_size()، يُطلق IsoStdLengthErrorViolation بدلاً من std::length_error ([SWS_CORE_01350]). وتصنف المواصفة الدالة بأنها غير آمنة ضد الاستثناءات (not exception safe) ([SWS_CORE_01350]). لذلك يجب على جهات الاستدعاء التأكد من الالتزام بحدود السعة لتجنب حدوث انتهاك في وقت التشغيل.
فيما يتعلق بالتزامن، فإن الطريقة غير قابلة لإعادة الدخول للنسخة نفسها: من المرجح أن تؤدي الاستدعاءات المتوازية المعدلة على الكائن نفسه إلى تلف البيانات دون مزامنة خارجية (تفسير: قواعد أمان خيوط المعالجة مماثلة لتلك الخاصة بحاويات ISO-C++). سؤال Q-1283cb9616fde934 (مفتوح) وإذا كان لا ينبغي تهيئة العناصر المضافة حديثًا بشكل افتراضي، بل ملؤها بنسخة من قيمة محددة مسبقًا، فيجب اختيار المتغير ذي التحميل الزائد مع المعامل const T& ([SWS_CORE_01351]). وتوفر الفئة ara::core::BasicString زوج واجهات مماثلاً في المقابل مع معالجة أخطاء متطابقة عند تجاوز القيم الحدية ([SWS_CORE_03058]، [SWS_CORE_03059]).
تم إنشاء إشعار الاستخدام هذا آليًا بناءً على مواصفة AUTOSAR R25-11.
As per corresponding usage in [vector] except for the following deviations: 1. if (sz > max_size()) IsoStdLengthErrorViolation is raised instead of std:: length_error
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 2eadecd4d26fالمصدرأسئلة مفتوحة (1)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
الاستخدام
تغير الدالة العضو resize للفئة ara::core::Vector ([SWS_CORE_01351]) من ملف الرأس #include "ara/core/vector.h" عدد العناصر في الحاوية إلى الحجم المستهدف المحدد مسبقًا sz. وعند زيادة الحجم، تقوم الدالة بتهيئة العناصر المضافة حديثًا بنسخ من القيمة الممررة c ([SWS_CORE_01351]). وتتم معالجة الاستدعاء تزامنيًا وليس له قيمة معادة (void).
معالجة الأخطاء والأمان من الاستثناءات
يطابق السلوك إلى حد كبير الحاوية القياسية std::vector، ولكنه ينحرف بشكل محدد في حالة الخطأ: إذا تجاوز المعامل sz القيمة القصوى max_size()، فسيتم إطلاق IsoStdLengthErrorViolation بدلاً من الاستثناء القياسي std::length_error ([SWS_CORE_01351]). وتصنف المواصفة الدالة صراحةً بأنها not exception safe ([SWS_CORE_01351]). وإذا حدثت أخطاء أثناء التخصيص أو أثناء نسخ c، فلن تكون هناك بالتالي أي ضمانات لاستعادة الحالة الأصلية للكائن.
القيود والتفاعل
بسبب غياب أمان الاستثناءات، فمن المرجح أن يؤدي الفشل إلى حاوية غير متسقة، ولهذا السبب ينبغي لجهات الاستدعاء التحقق مسبقًا مما إذا كانت هناك سعة كافية متاحة. سؤال Q-9701a24a177cbb21 (مفتوح) وإذا كان ينبغي إنشاء العناصر الجديدة بشكل افتراضي بدلاً من ذلك، فيتم توفير التحميل الزائد resize(size_type sz) بدون قيمة تهيئة ([SWS_CORE_01350]). ويوجد سلوك الخطأ المتطابق مع إطلاق IsoStdLengthErrorViolation والتصنيف كغير آمن ضد الاستثناءات بشكل مماثل في ara::core::BasicString ([SWS_CORE_03058]، [SWS_CORE_03059]).
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR.
مُولَّد بالذكاء الاصطناعيغير مُراجَعالنموذج: gemini-3.8-flash-medium · الجهد: medium · درجة الحرارة: غير قابل للتحكم · الموجّه: 57a8d094a016المصدرأسئلة مفتوحة (2)
مترجم من الدليل الألمانيgemini-3.8-flash-low · 2026-10-13 · الأصل الألماني
تُستخدم دالة الأعضاء shrink_to_fit() للفئة ara::core::Vector وفقًا لـ [SWS_CORE_01349] لتقليل سعة الذاكرة إلى الحجم المطلوب للعناصر الحالية وفقًا للتوجيه [vector]. يتم الإعلان عن الدالة عبر ملف الترويسة #include "ara/core/vector.h"، ولا تقبل أي معاملات ولا تُرجع أي قيمة (void) [SWS_CORE_01349]. يتم الاستدعاء بشكل متزامن على النسخة.
فيما يتعلق بسلوك الخطأ، لم يتم تحديد رموز أخطاء أو رسائل خطأ (DET/DEM). وصُنفت الدالة صراحةً في المواصفة على أنها not exception safe[SWS_CORE_01349]. تفسير: في حال فشل إعادة تخصيص الذاكرة داخليًا، فمن المحتمل ألا يكون هناك ضمان بشأن الحفاظ على حالة الحاوية السابقة. سؤال Q-b4b5bef83f265ceb (مفتوح)
تنطبق قيود هياكل البيانات التسلسلية على التزامن وسياق الاستدعاء: من المحتمل ألا تكون الاستدعاءات المتزامنة على نفس النسخة قابلة لإعادة الدخول أو آمنة بالنسبة للخيوط دون مزامنة خارجية. سؤال (مفتوح) أثناء التنفيذ، لا يجوز إجراء أي وصول متزامن للقراءة أو الكتابة إلى المتجه.
تم تحديد سلوك وثيق الصلة بالسلاسل النصية في [SWS_CORE_03056]: توفر الفئة ara::core::BasicString عبر #include "ara/core/string.h" أيضًا دالة shrink_to_fit() تستند إلى [basic.string] وتُصنف بالمثل على أنها not exception safe[SWS_CORE_03056].
تم إنشاء هذا النص بواسطة ذكاء اصطناعي بناءً على مواصفة AUTOSAR Adaptive R25-11.
gemini-3.8-flash-low· 2026-10-13 · الأصل الألماني