نمایش نتایج 1 تا 3 از 3

نام تاپیک: AnsiString یا char*

  1. #1
    کاربر تازه وارد آواتار max2004
    تاریخ عضویت
    مهر 1386
    محل زندگی
    شيراز
    پست
    58

    AnsiString یا char*

    سلام
    تو یک پروژه که تا حد زیادی با حافظه (رشته و آرایه) سروکار داره موندم که استفاده از کدوم گزینه بهتره؟
    از یه طرف اگه از char* استفاده کنم احساس میکنم چون مستقیما با اشاره گرها کار میکنم ممکنه سرعت بالاتر بره
    از اون طرف چون AnsiString دیگه حالت اشاره گر نداره مدیریت حافظش با خود C++‎ هست و شاید بهتر عمل کنه(از این لحاظ که دیگه اختصاص و حذف حافظه با من نیست)
    آیا موارد کاربرد این دو نوع داده تفاوت اساسی با هم داره؟

  2. #2
    خوب این بستگی به میزان نیاز ما به کار با رشته ها دارد ،
    در بسیاری از موارد که نیازی نیست کارهای زیادی بر روی رشته ها انجام دهیم و یا از قابلیت های string در ++C استفاده کنیم ، به راحتی از آرایه ها استفاده می کنیم و همین طور در مواقعی که قصد داریم کدها قابلیت حمل بیشتری داشته باشند (مثلا برای پشتیبانی از زبان C در کنار ++C اگر امکانش باشد).
    در مواردی هم که کار با رشته ها نیاز به تغییرات بسیاری دارد ، آنگاه از string استفاده می کنیم تا زمان توسعه کاهش یابد .

  3. #3
    از اون طرف چون AnsiString دیگه حالت اشاره گر نداره
    AnsiString هم یک اشاره گر هست. نوع string در C++‎ Builder از نوع string دلفی گرفته شد که در واقع اشاره گری به یک آرایه دینامیک در Heap هست که چند بایت سربار برای نگه داری تعداد Reference ها و سایز رشته داره. می تونید به هر کارکتر بصورت عضوی از یک آرایه دسترسی داشته باشید، محدودیتی از نظر حجم نداره، با رشته های null-terminated در C سازگار هست، با رسیدن تعداد Reference ها به صفر، بصورت خودکار آزاد میشه.


    وَ سَيَعْلَمُ الَّذِينَ ظَلَمُوا [آل محمد حقهم] أَيَّ مُنْقَلَبٍ يَنْقَلِبُونَ - الشعراء (227)
    و ظالمین [حق آل محمد (ص) ] به زودی خواهند دانست که به کدام بازگشتگاه بازخواهند گشت.

تاپیک های مشابه

  1. چطوری char* رو به int تبدیل کنیم (خیلی فوری)
    نوشته شده توسط Bandeye_khoda در بخش برنامه نویسی با Borland C++‎ Builder
    پاسخ: 3
    آخرین پست: دوشنبه 20 شهریور 1385, 15:16 عصر
  2. مشکل با نوع داده Char
    نوشته شده توسط emad4000 در بخش SQL Server
    پاسخ: 1
    آخرین پست: دوشنبه 23 مرداد 1385, 13:27 عصر
  3. int 2 char
    نوشته شده توسط behnam_akb در بخش برنامه نویسی با زبان C و ++C
    پاسخ: 9
    آخرین پست: جمعه 30 دی 1384, 02:44 صبح
  4. تبدیل AnsiString به wchar_t
    نوشته شده توسط mr_esmaily در بخش برنامه نویسی با Borland C++‎ Builder
    پاسخ: 2
    آخرین پست: چهارشنبه 09 شهریور 1384, 23:45 عصر
  5. چگونه میتوان یک String را به Char تبدیل کرد
    نوشته شده توسط سیروس مقصودی در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 4
    آخرین پست: جمعه 20 خرداد 1384, 11:41 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •