QCoreApplication рдЫреЛрдЯреА рдЧрддрд┐ рдкрд░реАрдХреНрд╖рдг

рд╡рд┐рд╢реНрд╡рд╕рдиреАрдпрддрд╛ рдФрд░ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдЕрдХреНрд╕рд░ рдмрдбрд╝реЗ рдФрд░ рдЕрдЦрдВрдб рдЖрд╡реЗрджрди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдХрдИ рдЫреЛрдЯреЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓реЛрдВ (рдбреЗрдореЛрдВрд╕) рдореЗрдВ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИред

рдПрдХ рд╕рдордп рдореЗрдВ, Qt4 рдХреЛ рдХрдИ рдореЙрдбреНрдпреВрд▓реЛрдВ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬреЛ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрди рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред рдПрдореНрдмреЗрдбреЗрдб рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдФрд░ рдХрдИ рд╕рдордЭрджрд╛рд░ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рд╕рдорд╛рдзрд╛рдиреЛрдВ рдкрд░ рдПрдХ рдордЬрдмреВрдд рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд╕рд╛рде, Qt5 рдиреЗ рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдПрдХ рдирдП рд╕реНрддрд░ рдкрд░ рд▓реЗ рд▓рд┐рдпрд╛ рд╣реИред

рдЖрдЗрдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдХрд╛рд░реНрдп рдХреЛ рджреЗрдЦреЗрдВ:
QCoreApplication app(argc, argv); QTimer::singleShot(3000, &app, SLOT(quit())); return app.exec(); 

рдпрд╣ рдПрдХ Qt рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЧреНрд░рд╛рдлрд┐рдХрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдирд╣реАрдВ рд╣реИред рдпрд╣ 3 рд╕реЗрдХрдВрдб рдХреЗ рд▓рд┐рдП рдЪрд▓рддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИред

рдПрдХ рдорд╛рдирдХ рдХрд░реНрдиреЗрд▓ рдФрд░ Qt 4.8.1 рдХреЗ рд╕рд╛рде рдореЗрд░реЗ рдХреБрдмрдВрдЯреБ 12.04 рдкрд░, Valgrind 102 kb рдХреЗ рдвреЗрд░ рдХрд╛ рдПрдХ рд╢рд┐рдЦрд░ рдЙрдкрдпреЛрдЧ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ Callgrind рдХреА рд░рд┐рдкреЛрд░реНрдЯ рд╣реИ рдХрд┐ 1.9 (*) рдорд┐рд▓рд┐рдпрди рдкреНрд░реЛрд╕реЗрд╕рд░ рдирд┐рд░реНрджреЗрд╢ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВред

рдЖрдЗрдП рдЖрдЬ рдХреЗ рдХреНрдпреВрдЯреА 5 рдмрд┐рд▓реНрдб рдкрд░ рдкреНрд░рд╛рдкреНрдд рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдВ: рд╡реЗрд▓рдЧреНрд░рд┐рдВрдб рдиреЗ 4.9 рдкрд░ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрди рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХреА, рдФрд░ рдХреЙрд▓рдЧреНрд░рд┐рдВрдб 114,000 рдкреНрд░реЛрд╕реЗрд╕рд░ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рддрд╛ рд╣реИред

рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ Qt 5 рдХрд╛ рдЙрдкрдпреЛрдЧ рд▓рдЧрднрдЧ 20 рдЧреБрдирд╛ рдХрдо рдореЗрдореЛрд░реА рдФрд░ рд▓рдЧрднрдЧ 16 рдЧреБрдирд╛ рдХрдо рдкреНрд░реЛрд╕реЗрд╕рд░ рдирд┐рд░реНрджреЗрд╢ QCoreApplication constructor рдореЗрдВ рдФрд░ Event-loop рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реИред

рдЗрд╕рдХреЗ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдХреНрдпреВрдЯреА 5 рдорд╛рдирддреА рд╣реИ рдХрд┐ рд╕рднреА рд▓рд╛рдЗрдиреЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдпреВрдирд┐рдХреЛрдб-рдПрдирдХреЛрдбреЗрдб рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЯреЗрдХреНрд╕реНрдЯ рдПрдирдХреЛрдбрд┐рдВрдЧ рдХрдирд╡рд░реНрдЯрд░ рдХрд╛ рдкреНрд░рд╛рд░рдВрдн рдХреЗрд╡рд▓ рддрдм рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдкрд╣рд▓реА рдЧреИрд░-рдпреВрдирд┐рдХреЛрдб рд▓рд╛рдЗрди рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИред рдпрджреНрдпрдкрд┐ Qt 5 рдореЗрдВ рдкреНрд▓рдЧ-рдЗрди рдбрд╛рдЙрдирд▓реЛрдб рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рд╣реБрдЖ рд╣реИ, рд╡реЗ рдмрд╕ рдФрд░ рднреА рддреЗрдЬреА рд╕реЗ рд▓реЛрдб рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдиреНрдп рд╕реБрдзрд╛рд░реЛрдВ рдиреЗ рднреА рдЧрддрд┐ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд┐рдпрд╛, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, Qt5 рдореЗрдВ C ++ 11 рд╕рдорд░реНрдерди рдХреА рд╢реБрд░реВрдЖрдд рдиреЗ рдпреВрдирд┐рдХреЛрдб рдХреЗ рддрд╛рд░реЛрдВ рдХреЛ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛ рджрд┐рдпрд╛, рдЬрд┐рдиреНрд╣реЗрдВ рдвреЗрд░ рдкрд░ рдореЗрдореЛрд░реА рдЖрд╡рдВрдЯрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред

рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, Qt рдореЗрдВ рдЕрдкрдиреЗ рд░рд╛рдХреНрд╖рд╕реЛрдВ рдХреЛ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдордЬрд╝рд╛ рд▓реЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдФрд░ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рддреЛ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ Qt Codwview рдореЗрдВ ред

(*) рдЪреЗрддрд╛рд╡рдиреА: рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдпрд╣ рдирд╣реАрдВ рджрд┐рдЦрд╛рддреА рд╣реИ рдХрд┐ рдХреЛрдб рдХрд┐рддрдиреА рддреЗрдЬреА рд╕реЗ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░реЛрд╕реЗрд╕рд░ рджреНрд╡рд╛рд░рд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдХреЗрд╡рд▓ рд╕рдВрдЦреНрдпрд╛ред рдХреГрдкрдпрд╛ рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдореИрдВрдиреЗ рдХреЗрд╡рд▓ рдореБрдЦреНрдп () рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдорд╛рдкрд╛, рд╕рд╛рдЭрд╛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдУрд╡рд░рд╣реЗрдб рдкрд░ рдзреНрдпрд╛рди рдирд╣реАрдВ рджрд┐рдпрд╛, рдЗрд╕рд▓рд┐рдП рдЖрд╡реЗрджрди рдХреЛ рдкреВрд░реНрд╡-рд▓рд┐рдВрдХрд┐рдВрдЧ рдпрд╛ рдкрд╣рд▓реЗ рд╕реЗ рдЪрд▓ рд░рд╣реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдХрд╛рдВрдЯрд╛ рджреНрд╡рд╛рд░рд╛ рдФрд░ рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдПрдХ рдЕрдиреБрд╡рд╛рджрдХ рд╕реЗ: рдпрджрд┐ рдРрд╕реЗ рдЫреЛрдЯреЗ рдЕрдиреБрд╡рд╛рдж рдЬрдбрд╝ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдореИрдВ рдЕрдиреБрд╡рд╛рджрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдиреА рдЖрдБрдЦреЛрдВ рдореЗрдВ рдкреВрд░рд╛ рдЧрдзреЗ рдирд╣реАрдВ рд╣реВрдБ, рддреЛ рдореИрдВ рдХреНрдпреВрдЯреА рд▓реИрдмреНрд╕ рдмреНрд▓реЙрдЧ рд╕реЗ рдиреЛрдЯреНрд╕ рдХрд╛ рдЕрдиреБрд╡рд╛рдж рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдБрдЧрд╛ред рдзрдиреНрдпрд╡рд╛рдж =)

Source: https://habr.com/ru/post/In149580/


All Articles