Skip to Content
Delphi in a Nutshell
book

Delphi in a Nutshell

by Ray Lischner
March 2000
Intermediate to advanced
576 pages
18h 13m
English
O'Reilly Media, Inc.
Content preview from Delphi in a Nutshell

Name

Raise Keyword

Syntax

raise Object reference
raise Object reference at Pointer
raise

Description

The raise statement raises an exception. The exception object is passed to an exception handler, and Delphi will automatically free the object when the exception handler finishes. Usually, the object reference creates a new instance of an exception object, and the exception class usually inherits from the Exception class in the SysUtils unit, but you are free to raise any object reference as an exception.

By default, Delphi stores the code address of the raise statement as the exception address. You can specify a different address with the at directive.

Inside an exception handler, you can use a plain raise statement to reraise the current exception. In this case, Delphi refrains from freeing the exception object until the next exception handler in the stack gets its chance to handle the exception.

Tips and Tricks

  • Low-level code and utilities should report exceptional conditions by raising exceptions. High-level and user interface code should use try-except or TApplication.OnException to catch and handle exceptions in a user-friendly manner.

  • Raising and handling an exception takes time and processor resources. Do so only for exceptional conditions. Do not use exceptions as a normal way to return information. For example, a collection class might implement the Contains method to return True if the collection contains an item, and False if the item is not in the collection. The normal ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

Delphi High Performance

Delphi High Performance

Primož Gabrijelčič
Delphi Cookbook

Delphi Cookbook

Daniele Teti

Publisher Resources

ISBN: 1565926595Errata Page