前兩天看到的 pragma用法

2021-03-31 20:42:20 字數 970 閱讀 9017

前兩天使用bcb進行winsdk的程式設計中,死活無法載入資源檔案(*.res),寫出的rc檔案沒有問題,用brcc32也可以生成資源檔案,但是就是無法和程式源**進行鏈結起來(如果用ide就好辦多了,但無奈現在用的是命令列編譯),百思不得其解,到晚上發帖無數,結果還是沒有搞定。

後來無奈用google,發現好似可以用#pragma編譯指令來控制,在csdn的一些文章中找到了答案,也發現了一些相關的其他技巧,寫下來要記牢。

#pragma 的用法

這是乙個編譯控制指令,可以在編譯時動態地調整編譯選項,這種指令在不同的編譯系統中是不同的。

#pragma warning(disable 4068)的意思是不顯示4068號警告資訊,如果編譯時總是出現4068號警告,而認為肯定不會有錯誤,可以使用這條指令。這條指令c++ builder和vc++都支援。

如果你沒有在函式內部使用某個引數,編譯時會報告"parameter name is never used in function func-name",使用#pragma argsused,編譯時就不再警告了。vc++不支援這條指令。

在c++ builder和vc++的幫助中所有#pragma的詳細說明。

#pragma hdrstop表示預編譯標頭檔案到此為止,後面的標頭檔案不進行預編譯。bcb可以預編譯標頭檔案以加快鏈結的速度,但如果所有標頭檔案都進行預編譯又可能占太多磁碟空間,所以使用這個選項排除一些標頭檔案。

有時單元之間有依賴關係,比如單元a依賴單元b,所以單元b要先於單元a編譯。你可以用#pragma startup指定編譯優先順序,如果使用了#pragma package(**art_init) ,bcb就會根據優先順序的大小先後編譯。

#pragma resource "*.dfm"表示把*.dfm檔案中的資源加入工程。*.dfm中包括窗體外觀的定義。

在使用#pragma的時候要注意和標頭檔案的相互位置,在c++builder中,焦點放在#pragma欄位上,按f1可以獲得更多更詳細的用法介紹說明。

前兩天寫的

往事隨風 高興,寫點自己的瑣事 還慶祝我帶我女兒來了 哈哈,好想念俺家冰冰,俺家女兒叫冰冰。天天好忙啊,學習變成了我的第一件事情,雖然學得很不好,但是我還是在學習了!這幾天在這裡跟別人在吵架,哈哈,有意思,這好像也成了我每天的例行公事!昨天下午陪老師打排球,5555,把手都給打黑了。是被球砸黑的,好...

前兩天做的測試題目及答案

一 填空題 20分 1 c語言表示式 5 2 7 8 的值是 2 當執行完以下語句後,變數a的值為 d的值為 e的值為 a 6 b a c a d a e a 3 下面程式段的輸出結果是 char a 111 a a 00 printf d o n a,a 4 a陣列定義如下,按照記憶體排列順序,a...

前兩天離職了,不想找工作,心態不好

從三月份給經理說要辭職,折騰到6月15日,上週終於把離職證明拿到手了。高興啊!晚上叫了兩個朋友,超市買了瓶勁酒,請客吃飯。離職成功 太不容易了!再說這兩天吧,老是有種感覺特別偷懶的心態,說是要找工作,老是不想發簡歷,不想動彈。最近也不知道怎麼了,得了電視劇集症候群。就知道看電視劇集,有點控制不了了。...