我有其在頭文件my.h最初聲明爲具有外部連接(沒有指定存儲類)錯誤由於早期非靜態非內聯函數的靜態線版本
int myfunc(int);
的函數
這個函數定義和它的調用存在於源文件my.c中 my.c包括my.h
這一切都很好。
但現在我想使這個功能MYFUNC在線 所以我在my.c宣佈一個新的原型
爲
__attribute__((always_inline)) static inline int myfunc(int)
和之前同樣的功能定義它的話,
不出所料我不斷收到錯誤說
靜態聲明'myf unc'遵循非靜態聲明
我需要爲C參考版本的代碼保留此函數的非靜態非內聯版本,併爲代碼的優化版本提供靜態內聯版本。
我怎樣才能解決這個問題,因爲我需要的功能的靜態聲明,這個現有的源/頭文件設置中我有
一種方式是我改變靜態內聯函數的名稱myfuncinline並使用它!
但是在當前的設置中有沒有什麼辦法。
你能解釋一下你特林更詳細地做什麼,IDK你想用一個不同版本的「參考談論什麼版本「等 –
然後刪除'靜態'。 –