2011-07-22 23 views

Trả lời

16

Sử dụng $IF với Defined() hơn $IFDEF:

{$IF Defined(INCOMING) or Defined(OUTGOING)} 
... 
{$IFEND} 
+0

Nhưng lưu ý rằng bạn không thể làm việc với các phiên bản Delphi. Có rất dễ làm: –

+0

@rudy đã làm một phần nhận xét của bạn bị mất? –

+0

Heck yeah. Ngón tay tôi trượt khỏi con chuột ma thuật của tôi khi tôi muốn hủy nó, trang đã thay đổi và tôi không thể tìm thấy câu trả lời của tôi. Tôi nghĩ rằng tôi đã thực sự quản lý để hủy bỏ nó.

12

Alternative, cho các phiên bản cũ:

{$IFDEF INCOMING} 
    {$DEFINE INCOMING_OR_OUTGOING} 
{$ENDIF} 
{$IFDEF OUTGOING} 
    {$DEFINE INCOMING_OR_OUTGOING} 
{$ENDIF} 

{$IFDEF INCOMING_OR_OUTGOING} 
... 
{$ENDIF} 
+1

Định nghĩa 'cũ' là gì? –

+1

@Andreas '$ IF' được thêm vào trong Delphi 6 –

+6

@Andreas: những người không có [CONDITIONALEXPRESSIONS] (http://docwiki.embarcadero.com/RADStudio/en/Conditional_compilation_%28Delphi%29) được xác định. Đó là [pre-Delphi 6] (http://books.google.com/books?id=V9t0lA-BPUAC&pg=PA52&lpg=PA52&dq=%22delphi+6%22+CONDITIONALEXPRESSIONS&source=bl&ots=4-UBsNal5r&sig=e-8cfyKVxOe5Z_wDZ1jtqKCyycw&hl=vi&ei = s0ThTf3YLI-cOsLenNUG & sa = X & oi = book_result & ct = kết quả & resnum = 1 & ved = 0CBcQ6AEwAA # v = onepage & q =% 22delphi% 206% 22% 20CONDITIONALEXPRESSIONS & f = false). –

0

Dưới đây là một biến thể của câu trả lời của David sử dụng 'không'.

Tôi sử dụng tính năng này khi tôi muốn tắt màn hình giật gân trên ứng dụng của mình trong khi ở chế độ gỡ lỗi. Nó ngăn cản tôi vô tình rời khỏi splash bị vô hiệu hóa nếu tôi quên không xác định NOSPLASH trong bản phát hành.

{$IF not (Defined(NOSPLASH) AND Defined(DEBUG))} 
    //code to create splash 
    {$IFEND} 
Các vấn đề liên quan