我最近在別人的opengl着色器類中遇到過這種代碼,我不確定它的用法。C++預處理器在類關鍵字和類名前定義
正如我從閱讀IBM's documentation所瞭解的那樣,#define ONEWORD將在隨後的文本中刪除ONEWORD的任何出現。
如果所有的事件都被刪除,那麼在這段代碼中有ONEWORD的目的是什麼?在類關鍵字之後但在類名之前有這樣的標記真的意味着什麼?
我以前只使用#define作爲包括守衛,所以這對我來說是全新的。
#define ONEWORD
class ONEWORD FooClass
{
FooClass();
~FooClass();
};
我看到這個中的代碼是在這裏:https://dl.dropbox.com/u/104992465/glsl.h
以防萬一,我做了它的上下文過於抽象。
我經常見到兩條腿的動物走進一些神祕的方形圍欄,那是什麼? [好吧,我自己回答,是關於刪除關於我觀察到的關鍵信息,並概括我自己的印象,然後詢問有關情況。] – 2013-04-04 06:31:45