Article View: pl.comp.lang.c
Article #291697Re: Sztuka Kodowania w C++ - Nowa Wersja!
From: Adam M
Date: Wed, 09 Dec 2020 11:05
Date: Wed, 09 Dec 2020 11:05
38 lines
1400 bytes
1400 bytes
On Wednesday, December 9, 2020 at 12:58:29 PM UTC-5, heby wrote: > On 09/12/2020 18:47, Jacek Jaworski wrote: > >> template < _T > > >> class MojaKontrolka : public _T > > W brew temu co pisze Adam to nie zadziała, bo klasa dziedzicząca po QObject nie może być szablonem > To bardzo interesujace. > > template< typename _T> > class Foo : public _T > { > }; > > class Bar : public Foo< QWidget > > { > Q_OBJECT > > Q_SIGNALS > ... > } > > I się kompiluje zarówno C++ jak i MOCem. W mocu znajdziesz: > Foo<QWidget>::staticMetaObject i inne ciekawoski z mocowania Qt. Qt w > wersji 5 coś. > > Innymi słowy, sprawdź sam. > > Rozwiązanie z mixinem jest dokładnie tym co potrzebujesz, nie wymaga > wielodziedziczenia i nie zawiera wad o których bym wiedział na podstawie > Twojego opisu używania na produkcji. Innymi słowy możesz już dzisiaj > zmienić wszystko na mixiny. Czesciowo zgodze sie z kolege - to bedzie dzialac i nawet mi sie to podoba - ma tylko jedna bardzo paskudna wade - koncowy kod puchnie przez template - w moim przypadku klasa display ma okol 1000 lini a w zrodle jest ponad 150 klas dziedziczacych po display (nie liczac innego "paskudztwa") - nawet nie chce myslec jak koncowy kod by wygladal :-(
Message-ID:
<0ae10656-cdda-4382-a912-d8d7a25a1d4dn@googlegroups.com>
Path:
polish.pugleaf.net!archive.newsdeef.eu!archive!apf2.newsdeef.eu!not-for-mail
References:
<478ab743-cd00-4961-88e1-983025db304bn@googlegroups.com> <d9830106-c21a-4564-b45f-0766ef86181fn@googlegroups.com> <cdd14123-89b7-4f80-9f2b-865f1038810an@googlegroups.com> <e38a42c4-36d3-49b6-8644-468f65828f4cn@googlegroups.com> <edd1ce6a-46e1-4883-8943-db4a0da8da33n@googlegroups.com> <8d469f13-e697-4488-8adf-29117a3eeb8cn@googlegroups.com> <rqqscj$p0n$1@dont-email.me> <b093aa7a-52ad-414b-b1c5-28d1d94a88d5n@googlegroups.com> <rqr383$gtr$1@dont-email.me>