SORU
24 Mayıs 2011, Salı


Dizi kullanır C tarzı bir dizi mi?ne std şimdi::

std::array C diziler çok daha üstün. Ve eğer eski kod ile birlikte çalışma için istiyorsam bile, sadece std::array::data() kullanabilirim. Hiç eski tarz bir dizi istiyorum herhangi bir nedeni var mı?

CEVAP
24 Mayıs 2011, Salı


Bir şey (çok yakından standart en son değişiklikleri takip ediyorum) özledim sürece, C stili diziler kullanır çoğu hala kalır. std::array statik başlatma izin yok, ama yine de sizin için başlatıcılar sayılmaz. Ve C tarzı sadece gerçek kullanım std::array için önce dizileri beri statik olarak başlatıldı tablolar çizgisinde:

MyStruct const table[] =
{
    { something1, otherthing1 },
    //  ...
};

begin her zamanki gibi kullanarak ve end şablon fonksiyonları (kabul edilen C 11) dolaşmak için onları. Hiç derleyici başlatıcılar sayısını belirleyen boyutu, mentionning olmadan.

EDİT: unuttuğum Bir şey daha: char[] yazın. dize hazır hala C stili diziler; yani Herkes std::array var diye, dize hazır bilgi kullanarak dışlamak olacağını sanmıyorum.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Bobbylee Budde

    Bobbylee Bud

    13 ŞUBAT 2011
  • Dave Wallace

    Dave Wallace

    27 Kasım 2007
  • SuperPrincessjo

    SuperPrinces

    1 EKİM 2010