Na ovoj stranici

Stil koda za C++

Qt Creator Koristi biblioteku Clang LibFormat za automatsko formatiranje i uvučenje C++ koda. Nametanje koda za projekt ili cijelu organizaciju.

Da biste specificirali globalne postavke uvlačenja za C++ uređivač, idite na Preferences > C++ > Code Style.

Sljedeća tablica opisuje dostupne postavke.

PreferencijaOpis
Formatting modeOdaberite:
  • Indenting Only za samo uvući kod.
  • Full Formatting za korištenje prečaca na tipkovnici Ctrl+I za formatiranje koda umjesto uvlačenja.
  • Use Built-In Indenter da isključite ClangFormat.
Ignore files greater thanUbrzajte analizu ignoriranjem velikih datoteka. Navedite maksimalnu veličinu datoteka za analizu.
Format while typingPrimijenite formatiranje dok tipkate.
Format edited code on file savePrimijenite formatiranje na uređeni kod prilikom spremanja datoteke. Da biste privremeno onemogućili ovu postavku prilikom spremanja datoteke, idite na File i odaberite Save Without Formatting.
Use custom settingsPromijenite stil ClangFormata globalno za sve projekte.
Custom settingsOdaberite postavke koje želite promijeniti, zatim odaberite Copy. Dajte ime postavkama i odaberite OK.
ClangFormatUredite opcije stila ClangFormat. Živi pregled prikazuje kako postavke mijenjaju uvlačenje. Ako unesete nevažeće vrijednosti, vidjet ćete poruke upozorenja.

Korištenje ugrađenog indentera

Postavke stila koda za ugrađeni indenter

Ako odaberete Use Built-In Indenter u Formatting mode, možete odrediti kako:

  • Tumačiti pritiske tipki Tab i Backspace.
  • Dodajte makroe koje indenter interpretira kao potpune naredbe kojima na kraju nije potreban semikolon.
  • Uvući sadržaj klasa, funkcija, blokova i imennih prostora.
  • Uvući klamze u klasama, imenskim prostorima, enumima, funkcijama i blokovima.
  • Kontrolirajte naredbe prebacivanja i njihov sadržaj.
  • Poravnajte nastavne retke.
  • Povežite pokazivače (*) i reference (&) u tipovima i deklaracijama s identifikatorima, nazivima tipova ili ključnim riječima lijevog ili desnog const a ili volatile a.

Postavljanje postavki za sadržaj

Možete uvući javne, zaštićene i privatne izjave i s njima povezane deklaracije unutar klasa.

Također možete uvući izjave unutar funkcija i blokova te deklaracije unutar imennih prostora.

Zavičak Sadržaj u zavičku Stil koda u postavkama C++

Postavljanje postavki za zagrade

Možete uvući deklaracije klasa, imennih prostora, enuma i funkcija te blokove koda.

Jezikak Braces u jezičcu Code Style u postavkama C++

Postavljanje postavki za switch naredbe

Možete poravnati case ili default naredbe, ili naredbe ili blokove povezane s njima unutar switch naredbi.

"switch" kartica na kartici Stila koda u postavkama C++

Postavljanje poravnanja

Za poravnanje nastavnih redaka s tokenima nakon dodjela, kao što su = ili +=, odaberite Align after assignments. Dodatne postavke za poravnanje nastavnih redaka možete navesti na kartici General.

Također možete dodati razmake uvjetnim izrazima, tako da se ne poravnavaju s idućim redom. Obično ovo utječe samo na izraze if.

Jezik poravnanja u jeziku Stila koda u postavkama C++

Povezivanje pokazivača i referenci

Da biste povezali pokazivače (*) i reference (&) u tipovima i deklaracijama s identifikatorima, imenima tipova ili ključnim riječima lijevog ili desnog const ili volatile, odaberite potvrdne okvire na kartici Pointers and References.

Karakter * i & automatski su vezani uz identifikatore pokazivača na funkcije i pokazivače na nizove.

 kartica Pokazivači i reference u kartici Stil koda u postavkama C++

Izrada ClangFormat datoteka s naredbenog retka

Možete stvoriti .clang-format datoteke s opcijama konfiguracije određenog unaprijed definiranog stila s komandne linije. Na primjer, za stvaranje formatne datoteke za stil LLVM unesite sljedeću naredbu:

clang-format -style=llvm -dump-config > .clang-format

Vidi također Indentiraj tekst ili kod, Postavi stil koda, Ponašanje, Postavi stil koda za Qt Quick i Nim.

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.