C ++ Multiline String Literals

C ++ Multiline String Literals
Najbardziej wydajnym podejściem do wyświetlania wielu instrukcji ciągów w sposób ustrukturyzowany i wydajny jest ciąg wielopoziomowy C ++. Kiedy mamy długi ciąg, może to być przydatne. Nie jest dobrze utrzymywać taki tekst na jednym wierszu. Wpływa na czytelność kodu.

Można wykorzystać wiele metodologii do konstruowania ciągów wielopoziomowych C ++, które zostaną omówione w tym artykule. Załączając ciąg w cytatach, możemy go podzielić na wiele linii. Wsporniki można użyć do podziału sznurka na liczne wiersze. Ponadto do kontynuowania linii stosuje się znak odwrotny w C ++. Zbadajmy każdą metodę bardziej szczegółowo. Oprócz wyjaśnień każdej metody zawarliśmy przykłady.

Przykład 1: Za pomocą literałów ciągów dla ciągów wielopoziomowych w C++

Jeśli sąsiadowane są dwa lub więcej literałów łańcuchowych, C ++ umożliwia niejawne połączenie ciągów, co pozwala kompilatorowi je podłączyć. W C ++ możemy użyć ukrytej konkatenacji, aby stworzyć literał wielopostaciowy, jak pokazano poniżej:

Mamy implementację ciągów multiline w następującym programie. Program obejmował biblioteki na początkowym etapie. String należy dołączyć, aby uzyskać dostęp do funkcjonalności ciągu w programie. Tam nazywa się główna funkcja programu. W bloku głównej funkcji mamy standardową klasę ciągów „STD :: String”, biorąc pod uwagę nazwę „MultIlinestring”. String multiline ma trzy literały strunowe podzielone na trzy linie.

Treść ciągu znajduje się w podwójnych cytatach reprezentujących, że jest to ciąg. Więc te literały smyczkowe są blisko siebie, kompilator C ++ będzie je połączył. Literały ciągów wielopoziomowych zostaną wydrukowane na strumieniu wyjściowym.

#włączać
#włączać
int main ()

STD :: String MultiLinestring =
„Issac Newton”
„Odkrył grawitację”
„Po zobaczeniu jabłka upada z drzewa.";
STD :: Cout<< "Multiline String:"<powrót 0;

Na poniższym obrazie literały multiline smyt są połączone razem i reprezentowane jako pojedynczy ciąg.

Przykład 2: Używanie znaku backslash dla ciągów wielopoziomowych w C++

Kompilator eliminuje nową linię i poprzedni znak odwrotny podczas używania znaku odwrotnego na końcu linii. W ten sposób tworzony jest ciąg wielopoziomowy. W przeciwieństwie do poprzedniej metody, wcięcie jest tutaj ważne.

Rozpocznijmy demonstrację programu. Po pierwsze, mamy biblioteki C ++ zgodnie z wymaganiami programu. Następnie w głównej funkcji INT jest deklaracja ciągu. Zastosowaliśmy standardową reprezentację ciągów klasy i zdefiniowaliśmy ciąg „BackSlashString”. Literały sznurkowe używają symbolu „\”, aby dołączyć do literałów multiline smyt.

Zauważ, że każdy literał sznurka zawiera oprawę odwrotną. Przestrzeń na początku literalu String jest przechowywana tutaj w programie. Wgłębienie jest bardzo ważne przy użyciu symboli zwiersła na końcu każdego literatu smyczkowego. Następnie wywołuje standardową klasę COUT do wyświetlania ciągów wielopasmowych, który używa symbolu backslash.

#włączać
#włączać
int main ()

STD :: String BackSlasString = "Nie przestań \
Dopóki nie będziesz \
dumny dla siebie.";
STD :: Cout<powrót 0;

Wyjście używania backslash na końcu literału ciągów jest wydrukowane po kompilacji powyższego kodu.

Przykład 3: Wykorzystanie surowych literałów smyczkowych

Surowy literał to najlepszy sposób na stworzenie literatu multiline smyt. Ta metoda jest prosta i wydajna; Działa jednak tylko z C++. Należy zauważyć, że ciąg zachowuje wszystkie przestrzenie, nowe linie i wgłębienia.

Poniższy program zaimportował pliki nagłówka, ponieważ jest to początkowy etap każdego programu C ++. W następnym kroku mamy główną funkcję wykonania programu. W ciele głównej funkcji nazwali standardową klasę ciągów „std :: String” do deklarowania ciągu. Ciąg jest zadeklarowany jako „MyString”, a ciąg zawiera surową reprezentację ciągów wielopoziomowych.

Użyliśmy słowa kluczowego „R” do surowych literałów smyczkowych, a następnie owinęliśmy literały wielopasmowe w podwójnych cytatach i przekazali je do okrągłych nawiasów. Ważną rzeczą w surowych literałach smyczkowych jest to, że wszystkie białe linie, nowe linie literałów i wgłębienia są tutaj zachowane. String multiline zostanie wydrukowany po surowej literalnej reprezentacji.

#włączać
#włączać
int main ()

std :: String MyString = r ”(zmierzysz się z wieloma
Pokonania w życiu, ale nigdy
Pozwól sobie zostać pokonanym).";
STD :: Cout<<"Multiline String Literals:"<powrót 0;

Jak widać, ciąg wielopoziomowy jest wyświetlany jako wyjście powyższego programu. Ponadto nowa linia i wgłębienie są zachowane przez surowy literał sznurkowy.

Przykład 4: Korzystanie z makr

Wreszcie, dzięki C ++ możemy wygenerować ciąg wielopoziomowy za pomocą makr. W tym przypadku wcięcie jest nieistotne, a metoda zastępuje pojedynczą przestrzeń licznymi postaciami białej.

Makro służy do określenia dowolnej stałej wartości lub zmiennej o jej wartości w całym programie, który zostanie zastąpiony nazwą makro, gdzie makro zawiera sekcję kodu, która zostanie uruchomiona, gdy nazwa makro zostanie użyta.

W pliku nagłówka zdefiniowaliśmy makro jako „multIlin_string” i przekazaliśmy zmienną „s” jako parametr i użyliśmy tej zmiennej „s” z procesorem hashtag. Teraz jesteśmy w głównej funkcji programu, która ma w sobie określoną nazwę ciągu „Stringis”. Ciąg użył nazwy makr „MultIlin_String” i zapisaliśmy dosłowny ciąg w makrach. Reprezentacja makr wielopoziomowych literałów smyczkowych zostanie wydrukowana w czasie kompilacji programu.

#włączać
#włączać
#definicja multiline_string (s) #s
int main ()

std :: String Stringis = multIlin_String (programowanie to umiejętności
Najlepiej nabyte przez praktykę
i przykład, a nie
z książek.);
STD :: Cout<< "Multiline String Literals: " <powrót 0;

Wyjście wykorzystujące makra do wyrażania ciągów wielopoziomowych jest wyświetlane na poniższym rysunku.

Wniosek

Reprezentacja łańcucha multiline jest najczęściej używana do komentowania czegoś w kodzie. Jeśli chcemy użyć multiline używanej jako ciąg w kodzie i zostanie wykonany, następnie załącz go w reprezentacji ciągów. Omówiliśmy różne metodologie dla ciągów wielolinowych używanych w C ++ z uruchamiającymi przykładowymi programami. Zbadać każde podejście; Są proste do zrozumienia i wdrożenia w C++.