Inteligencja w C++

Microsoft Visual C++ 6.0 nie tworzy szybszego kodu niż wersja 5.0. W innych dziedzinach znacznie przewyższa poprzednią wersję, zwłaszcza pod względem wygody i funkcji programistycznych.

Microsoft Visual C++ 6.0 nie tworzy szybszego kodu niż wersja 5.0. W innych dziedzinach znacznie przewyższa poprzednią wersję, zwłaszcza pod względem wygody i funkcji programistycznych.

Microsoft sprzedaje Visual C++ 6.0 jako niezależny produkt i część drugiej edycji pakietu Visual Studio. Niezależnie Visual C++ (VC) można kupić w trzech wersjach. Standardowa pozwala na tworzenie samodzielnych programów dla Windows. Wersja Professional umożliwia pisanie aplikacji bazodanowych (wspiera OLE DB). Do rozbudowanej wersji Enterprise dołączona jest specjalna wersja bazy SQL Server, w której można tworzyć procedury przechowywane dla serwera SQL i wykorzystywać dane z AS/400.

W nowej wersji kompilatora wprowadzono pewne rozszerzenia do języka C/C++ pozwalające precyzyjnie sterować optymalizacją programu. Można wymusić, by konkretna funkcja zawsze była typu inline. Można także określać, że dane wyrażenie logiczne jest prawdziwe do czasu zmiany wartości zmiennych. Umożliwia to np. sterowanie kolejnością wykonywania porównań, a jednocześnie w przypadku nieprawidłowego wykorzystania, może powodować powstanie błędnego kodu!

W kompilatorze Visual C++ 6.0 wprowadzono wiele rozszerzeń. Jednak nie tworzy on szybszego kodu niż w wersji 5.0. Działa trochę wolniej i wymaga znacznie więcej pamięci. Nie można jednak powiedzieć, że tworzy "lepszy" kod. Przyspieszono tylko obsługę dużych plików PCH (zawierających m.in. prekompilowaną informację o prototypach). Kompilacja dużej liczby krótkich plików źródłowych trwa dłużej niż w poprzednich wersjach.

Operatory alokowania pamięci mogą rejestrować, czy dany blok został poprawnie zaalokowany i zwolniony. Dzięki temu łatwiej można znaleźć tzw. memory-leaks, czyli np. obszary pamięci, których nie zwolniono przed opuszczeniem programu.

Linker w VC 6.0 pozwala na tworzenie programów stosujących opóźnione ładowanie bibliotek dynamicznych. Dzięki temu tworzona aplikacja jest wczytywana znacznie szybciej - biblioteki dynamiczne są inicjowane dopiero wtedy, gdy są rzeczywiście potrzebne. Może się jednak zdarzyć, że zabraknie pamięci do wczytania biblioteki podczas działania programu.

Zmieniono format plików bibliotek importowych. W wersji 6.0 są znacznie krótsze, można jednak tworzyć biblioteki zgodne z poprzednią wersją VC.

Debugger w VC 6.0 pozwala na drobne zmiany w kodzie programu, które automatycznie zostaną skompilowane bez przerywania kontroli. VC 6.0 potrafi znacznie lepiej rozpoznawać typy, a także odczytywać poprawne nazwy funkcji podczas śledzenia kodu.

W edytorze wprowadzono mechanizm automatycznego uzupełniania wyrażeń (IntelliSense). Aby można było go wykorzystywać, kod musi być poprawny pod względem syntaktycznym. Czasem wydaje się, iż kompilator "nie lubi" pewnych sekwencji kodu - w niektórych (poprawnych!) miejscach programu nie można skorzystać z tej funkcji.

Duże zmiany wystąpiły w środowisku VC i dołączonych bibliotekach. VC zawiera znacznie więcej kreatorów, a istniejące wzbogacono o nowe możliwości. W kreatorach tworzących połączenia z bazą danych można korzystać z OLE DB. Możliwe jest natychmiastowe korzystanie z nowych kontrolek rozprowadzanych z IE 4.0 (w tym także tworzenie pasków narzędzi i pasków stanu przypominających te z IE 4.0). W nowej wersji ATL można niemal automatycznie tworzyć tzw. konsumentów i dostawców OLE DB. W VC 6.0 wprowadzono także specjalny Implementation Wizard, pozwalający tworzyć "pusty" kod obiektu COM do określonego interfejsu.

Bibliotekę MFC podzielono na wiele modułów. Dzięki temu do programu dołączane są tylko te elementy MFC, które są rzeczywiście niezbędne. MFC zawiera wsparcie dla nowych elementów występujących w Windows 98/NT 5.0.

Istotną zmianą w MFC jest wprowadzenie nowego typu kontenerów, tzw. Active Document. Dotychczas (zgodnie z pierwszymi wersjami OLE) dla każdego typu dokumentu wymagane było utworzenie oddzielnej ramki. Teraz można łatwo stworzyć aplikację, w której konkretny dokument wykorzystuje istniejącą już ramkę (co znacznie skraca czas wczytywania dokumentu osadzonego). Przykładem takiej aplikacji jest "zszywacz" z Microsoft Office.

W Visual C++ znacznie prostsze jest korzystanie z obiektów ActiveX.

<hr size=1 noshade>Producent: Microsoft

Produkt: Visual C++

Cena: Professional - 1992 zł (upgrade - 946 zł), Enterprise - 4370 zł (upgrade - 2678 zł)

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200