ABAP的include關鍵字,Java的import, C的include和C4C ABSL 的i

來源:互聯網
上載者:User

標籤:Java   C++   JavaScript   ABAP   SAP   

ABAP

使用關鍵字重複引入一個include program,會報syntax error:

原因是因為ABAP對include這個關鍵字的實現和其他程式設計語言有點不一樣,在啟用時簡單地把被include的program的全部原始碼替換原程式裡INCLUDE incl這一行,所以重複引入一個include program會報錯。

值得一提的是,ABAP report悄悄得include了很多標準的program,比如<sysini>.

因此如果再次重複引入,同樣的會遇到語法錯誤。

import in Java

Java的import和ABAP的include關鍵字實現的效果不一樣,在Java裡使用import引入包名可以讓程式猿少打些字,比如比較第13行和第15行的寫法,明顯前者要簡潔一些。

因為import引入的是包名而不會像ABAP那樣將包的原始碼引入到使用了import的來源程式,因此可以重複import。只是將Java編譯器產生的.class反編譯之後,會發現編譯器自動將冗餘的import移除,且自動引入了新的包java.io.printStream:

include in C

譚浩強老師的《C程式設計》一書中提到,編譯器預先處理時,要對#include命令進行"檔案包含處理":將被include的標頭檔的全部內容複寫到#include處。

那麼C語言的include類似ABAP的關鍵字include。

例子:a.c裡include標準的<stdio.h>:

這個標頭檔的位置: /usr/include

裡面是一些宏定義和函式宣告:

b.c裡沒有include這個標頭檔:

所以b.c編譯產生的執行檔案尺寸小於a.c:

import in C4C ABSL

同Java的import,不會對後台產生的ABAP代碼有任何影響。


要擷取更多Jerry的原創技術文章,請關注公眾號"汪子熙"或者掃描下面二維碼:

ABAP的include關鍵字,Java的import, C的include和C4C ABSL 的i

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.