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

Computerworld Events

Vi samler hvert år mere end 6.000 deltagere på mere end 70 events for it-professionelle.

Ekspertindsigt – Lyt til førende specialister og virksomheder, der deler viden om den nyeste teknologi og de bedste løsninger.
Netværk – Mød beslutningstagere, kolleger og samarbejdspartnere på tværs af brancher.
Praktisk viden – Få konkrete cases, værktøjer og inspiration, som du kan tage direkte med hjem i organisationen.
Aktuelle tendenser – Bliv opdateret på de vigtigste dagsordener inden for cloud, sikkerhed, data, AI og digital forretning.

It-løsninger | København V

Platform X 2026: Forretning, teknologi og transformation

Mød verdens stærkeste og mest effektive platforme der driver den digitale transformation samlet i København - og dyk ned i den nyeste teknologi.

Andre events | Kongens Lyngby

Årets CIO 2026

Vi samler Danmarks stærkeste digitale ledere til en dag med viden og visioner. Årets CIO 2026 fejrer 21 års jubilæum, og NEXT CIO sætter spotlight på næste generation. Deltag og bliv inspireret til at forme fremtidens strategi og eksekvering.

Digital transformation | Hellerup

Roundtable: Stærkere data og skarpere beslutninger i en AI-æra

AI kræver data, ledelsen kan stole på. Computerworld samler digitale ledere til en fortrolig rundbordssamtale om datagrundlag, beslutninger og skalering af AI i organisationen. Få konkrete erfaringer og nye perspektiver. Ansøg om en plads.

Se alle vores events inden for it

Navnenyt fra it-Danmark

Netip A/S har pr. 1. februar 2026 ansat Henrik Mejnhardt Nielsen som ny kollega til Product Sales Teamet i Herlev. Han kommer fra en stilling som Business Development Manager hos Arrow. Nyt job
Renewtech ApS har pr. 1. marts 2026 ansat Emil Holme Fisker som Customer Service Specialist. Han skal især beskæftige sig med at levere høj kvalitets kundeservice og hjælpe Renewtechs kunder med at få de rette løsninger til deres behov. Han kommer fra en stilling som Key Account Manager hos Camro A/S. Han er uddannet som salgselev hos Camro A/S. Han har tidligere beskæftiget sig med at udvikle gode kunderelationer, opsøgende salg og udvikling af salgsaktiviteter. Nyt job

Emil Holme Fisker

Renewtech ApS

Immeo har pr. 1. maj 2026 ansat Sofie Amalie Buur som Consultant. Hun kommer fra en stilling som Frontend Engineer & UI/UX Designer hos Valyrion. Hun er uddannet Cand.it. Softwaredesign ved ITU. Nyt job
Mohamed El Haddaoui, er pr. 7. april 2026 ansat hos Dafolo A/S som IT-systemudvikler. Han skal især beskæftige sig med udviklingsopgaver relateret til Brugerklubben SBSYS. Han er nyuddannet datamatiker og har erfaring med udvikling af REST API'er og integreret databaser. Nyt job

Mohamed El Haddaoui

Dafolo A/S