Softwarekomponenter i C++ speeder Visual Basic op

Du kan optimere dine Visual Basic programmer med softwarekomponenter skrevet i C++. Jonathan Morrison forklarer i sin bog, hvordan Visual Basic programmørerne gør det selv.

C++ for Visual Basic folk

Amerikaneren Jonathan Morrison har skrevet bogen "C++ for VB Programmers", der er udgivet på forlaget Apress. I den forklarer han Visual Basic-programmører, hvordan de kan lære C++ programmering med udgangspunkt i deres erfaringer. Det kan læserne derefter bruge til at skrive Dynamic Link Library (DLL) og Component Object Model (COM) komponenter.

Bogen giver et par store programeksempler på, hvordan man programmerer disse komponenter. Derfor kan den også læses som en introduktion til at programmere komponenter, der indeholder grundlæggende funktioner til flere programmer.

Hvorfor C++ komponenter til Visual Basic

Hans argument for at skrive C++ komponenter til Visual Basic er effektivitet. Han anfører, at mange komponentbiblioteker til Visual Basic er skrevet i C og C++.

Man kan skrive ActiveX DLL komponenter med Visual Basic. Men de er bundet til ActiveX og COM miljøet, ligesom programmøren naturligvis skal arbejde med Visual Basic sprogets fordele og ulemper.

Visual Basic programmører kan i C++ skrive komponenter, som øger effektiviteten af deres programmer markant.

Komponenter i C++

C++ set ud fra Visual Basic

Morrison gennemgår systematisk de centrale forskelle på de to programmeringssprog og forklarer C++ syntax for Visual Basic folkene. Dertil bliver udviklingsmiljøet med C++ og preprocessoren behandling af filerne med kildeteksten beskrevet. Det er en af mange forskelle mellem de to programmeringsmiljøer, at C/C++ anvender preprocessor, som er en tekstfortolkning, der foretages inden compileren oversætter programmet. Dette bruger C/C++ programmører til at styre opbygningen af programmet.

Morrison behandler de klassiske forskelle på sprogene. Vi får gennemgået initialisering af variable, anvendelse af hukommelse i C++ samt pointerne, som C/C++ er så berygtet for. Et kapitel udfolder derefter konstruktionen af klasserne i C++.

Udviklingsmiljøet: ATL og COM

Efter at Morrison har forklaret forskellen mellem C++ og Visual Basic, tager han fat på programmering af komponenter. Han viser, hvordan man skriver en simpel COM-komponent - Component Object Model objekt. Når dette skal gøres i C++, forudsætter det at man anvender Active Template Library (ATL), der er et klassebibliotek til C++. Derfor giver han eksempler på, hvordan ATL bruges i programmeringen.

Morrison peger ærligt på det videre arbejde efter hans forklaringer. For efter den indledende forståelse kræver programmering af softwarekomponenter praktisk indsigt i ATL og COM. ATL er et stort bibliotek, som det tager tid at sætte sig ind i.

Bogen

Bogen

Trods titlen er bogens formål ikke at gøre Visual Basic programmører til C++ programmører. Det er ikke en lærebog i C++ programmering, og Morrison har ingen ambitioner herom. Derimod fastholder han perspektivet i Visual Basic fra start til slut.

Som et par ekstra rosiner i slutningen, giver bogen et par supplerende artikler. Den første viser skrivning af flertrådede programmer i Visual Basic (multithreading). Den anden behandler formatet for tekststrenge i Visual Basic: BSTR, der bygger på Unicode karakterer i modsætning til ANSI karakterer, som blandt andet bruges i C++. Derfor skal man være opmærksom på tekstformatet, når man kombinerer Visual basic og C++.

Bogen er pædagogisk skrevet, så den let kan læses på sofaen. Morrison gør en dyd ud af at forklare alt det, han nævner. De store centrale eksempler på programmering af komponenterne skal dog gennemarbejdes ved tastaturet og computeren. Til den del medfølger der en CD-ROM med Visual C++ 6.0 Introductory edition, således at Visual Basic programmører kan starte på eksemplerne med det samme. Desuden kan kildeteksten til eksemplerne downloades fra forlaget.

Bogen skal anbefales de Visual Basic programmører, som vil skrive komponenter i C++ som supplement til Visual Basic. Dette projekt gennemgår bogen systematisk med gode forklaringer undervejs. Hvis du derimod ønsker at skifte helt over til C++, findes der andre bøger som giver meget grundigere introduktion til sproget og forklaring af programdesign i C++ universet.

Bogen forudsætter kendskab til programmering i Visual Basic, hvorimod Morrison påtager sig at forklare C++ for læseren.

C++ for VB Programmers
Jonathan D. Morrison
Apress, 2000, distribueres af Springer-verlag
ISBN 1-8893115-76-3
550 sider. Med CD-ROM
$49,95

Læses lige nu

    Annonce

    Capgemini Danmark A/S

    Head of Digital Trust & Security

    Københavnsområdet

    Capgemini Danmark A/S

    Java Engineer

    Københavnsområdet

    Annonceindlæg fra Barco

    Sådan er teknologi og design med til at skabe vellykkede hybridmøder

    Måden vi mødes på har ændret sig. Så hvorfor ser vores mødelokaler stadig ens ud?

    Navnenyt fra it-Danmark

    Lars Erik Larsen, it-arkitekt hos Jyske Bank, har pr. 29. juni 2026 fuldført uddannelsen Master i it, linjen i softwarekonstruktion på Aarhus Universitet via It-vest – samarbejdet. Færdiggjort uddannelse

    Lars Erik Larsen

    Jyske Bank

    Genetec har pr. 1. august 2026 ansat Jan Julin som Channel Account Executive. Han skal især beskæftige sig med styrke samarbejdet med partnere og kunder i Danmark, Finland og Baltikum. Han kommer fra en stilling som Senior Business Development Manager hos Dahua Technology. Han har tidligere beskæftiget sig med videoovervågning, adgangskontrol, sikkerhedsteknologi, salg og forretningsudvikling. Nyt job

    Jan Julin

    Genetec

    Fellowmind Denmark A/S har pr. 1. september 2026 ansat Morten Jakobi som Business Unit Director. Han skal især beskæftige sig med at samle og udvikle Fellowminds forretning inden for Managed Services, Cloud Infrastructure & Security. Han kommer fra en stilling som Chief Executive Officer hos Inventio.it A/S. Han har tidligere beskæftiget sig med Ledelse og udvikling af Managed Services, serviceforretninger og transformation i Norden og Benelux. Nyt job

    Morten Jakobi

    Fellowmind Denmark A/S

    EG Danmark A/S har pr. 17. august 2026 ansat Michael Banegas Madsen, 32 år,  som Senior Account Executive. Han skal især beskæftige sig med Ansvar for nysalg og vækst af eksisterende kunder, samt opbygning af kunderelationer på tværs af Jylland og Fyn. Han kommer fra en stilling som Senior Talent Attraction Specialist hos Danske Commodities A/S. Han er uddannet Kandidat i Corporate Communication fra Aarhus BSS. Han har tidligere beskæftiget sig med 6 års erfaring med rekruttering af tech-profiler i bl.a. Danske Commodities. Nyt job

    Michael Banegas Madsen

    EG Danmark A/S