123
4567
891011
1213
1415
1617
struct something;
// member selection using actual struct variable
something ssomething;
ssomething.nvalue = 5;
// member selection using reference to struct
something &rssomething = ssomething;
rssomething.nvalue = 5;
// member selection using pointer to struct
something *pssomething = &ssomething;
(*pssomething).nvalue = 5;
注意指標解引用必須括在括號,因為成員選擇運算子具有比解引用操作符的優先順序更高的。
因為訪問結構和類成員通過指標是笨拙的語法,c + +提供的第二個成員選擇運算子(->)從指標做成員選擇。下面的兩行是等價的:
笨拙的語法
引用和指標 引用和指標引用的行為像乙個const指標解引用乙個有趣的關係式。從而給出如下 1 2 3 intnvalue 5 int constpnvalue nvalue int rnvalue nvalue pnvalue和rnvalue評估同。作為乙個結果,下面兩個語句 產生相同的效果 1 2...
笨拙而詭異的 Oracle
有這樣一段 sql 通過 c 獲取查詢結果 sql 中有兩個引數,且都是字串型別,以上的 c 是生成 oracle sql 所需要的引數。執行結果如下 居然發生這樣的錯誤!苦思冥想外加多次嘗試,均無果!該錯誤的詭異之處在於 phdlevel 的值為 時,執行正常,而為某一狀態值 平衡,欠平衡,過平衡...
笨拙而詭異的 Oracle(之二)
有一張表,很多資料 想取某個月的資料。初始的想法很簡單,根據日期 rq 形成條件即可 符合條件的記錄數是 129835,但耗時太長 14.515 秒 rq欄位是做過索引的 直觀的反應是 oracle 的 to char 函式效率不高!那有沒有其他函式呢?有,找到了乙個 months between ...