الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

عمل كوبي لفكتور في سي++

بدأه hbate_allah في 14 يناير 2010 · 5 رد · 625 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

لدي

struct Face

{

vector<int> polygon;

vector<int> text;

vector<int> norm;

vector<normale> norm_face;

}F;

[/left

]

و عرفت vector اثنان

C++ كود

for (int j=0;j<Graph.size();j++)

{

if (result_s>0)

{

Graph_visibl[k]=Graph[j];

k=k+1;

}

}

}

C++ كود

vector<Face> Graph;

vector<Face_v> Graph_visibl

;

اردت ان عمل كوبي من الفيكتور Graph

الى الفيكتور Graph_visibl

فقمت

for (int j=0;j<Graph.size();j++)

{

Graph_visibl.resize(Graph_visibl.size()+1);

Graph_visibl[Graph_visibl.size()-1]=Graph[j];

int ii=Graph_visibl[j].polygon[0];

F.polygon.clear();

F.text.clear();

F.norm.clear();

لكن وجدت انه لا يقوم بعمل الكوبي لكل العناصر بطريقة صحيحة

رغم انه لا يظهر لي انه خطا

#2

السلام عليكم,

لو من الممكن أن تقوم بعمل تنسيق للكود في الموضوع, لأني لم أستطع قراءة الكود حقيقة,

تحياتي,

#3

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

#4

السلام عليكم

لا ادري تنسيقية الكود عندي لا تعمل لا ادري هل الخطا من عندي ام ان الجميع لا تعمل معهم المهم لقد حاولت التحايل عليها ان شاء الله يصلح الامر

struct Face

{

vector<int> polygon;
vector<int> text;
vector<int> norm;
vector<normale> norm_face;

}F;

كما عرفت جدولين ديناميكيين ينتميان لهذه struct

vector<Face> Graph;
vector<Face_v> Graph_visibl

;

اردت ان عمل كوبي من الفيكتور Graph

الى الفيكتور Graph_visibl

فقمت

for (int j=0;j<Graph.size();j++)

{

Graph_visibl.resize(Graph_visibl.size()+1);



Graph_visibl[Graph_visibl.size()-1]=Graph[j];

لكن وجدت انه لا يقوم بعمل الكوبي لكل العناصر بطريقة صحيحة

رغم انه لا يظهر لي انه خطا

تم تعديل هذه المشاركة بواسطة hbate_allah في 15 يناير 2010 في 21:02

#5

اعذرني و لكني لم أفهم لماذا كتبت الـ loop؟

هل تريد نسخ العناصر الموجودة في Graph ووضعها في Graph_visibl بحيث أن العناصر القديمة لـ Graph_visibl يتم حذفها؟

Graph_visibl = Graph; // very easy! no loop needed

أم أنك تريد إضافة العناصر الموجودة في Graph إلى Graph_visibl؟

Graph_visibl.insert(Graph_visibl.end(), Graph.begin(), Graph.end());

هل هذا هو ماتريده؟ لاداعي لتغيير حجم الـ vector في كل مرة و التعامل معه على أنه مصفوفة "ثابتة", فقط قم بإضافة العناصر و سيتولى هو العملية.

تحياتي,

#6

السلام عليكم

graph_visibl هو فارغ في البداية

لقد جربت ان اضع له في مكان تغيير الحجم هذا السطر

code]Graph_visibl = Graph[j]

لكن تاتيني عند التنفيذ خطا

لذا بدلته بالسطريين الذي احدهما يقوم بزيادة في حجم الفيكتور و الثاني يعمل الكوبي

مواضيع مشابهة