2012-05-14 25 views
7

Robię programowanie Visual C++, Stworzyłem aplikację konsoli CLR. Zauważyłem, że tablice String powinny być zadeklarowane jako String ^, a nie String []. Jaki jest pożytek z ^? I dlaczego jest używany zamiast []? Czy ta substytucja jest ograniczona tylko do aplikacji CLR? Oto linia kodu i błąd: generowaneUżywanie operatora^w wizualnym C++

array<String[]>[] abc; 

błędy były

błędu C2143: błąd składni: Brakuje „;” przed "["

błąd C2146: błąd składni: brakujący "; przed identyfikatorze „abc”

eror C2065: „abc”: identyfikator nielegalna

Odpowiedz

12

okalającej akcent oznacza, że ​​obiekt jest zarządzany wskaźnik, to zostaniesz automatycznie zbierane przez śmieciarza - nie trzeba robić to w sposób dorozumiany. Proszę spojrzeć na this article, aby zrozumieć, jak działają tablice w C++/CLI.

W twoim przypadku:

array<String^> ^abc; 

I jest to substytucja ogranicza się tylko do zastosowań CLR?

Tak.