亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫(kù)
最近訪(fǎng)問(wèn)板塊 發(fā)新帖
查看: 2113 | 回復(fù): 6
打印 上一主題 下一主題

[C++] C::*是什么意思 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2012-07-30 20:35 |只看該作者 |倒序?yàn)g覽
今天在看C++ Templates的,第十五章講trait和policy的時(shí)候,有一個(gè)例子,里面有這樣的寫(xiě)法:
template<typename C> static One test(int C::*);

請(qǐng)問(wèn)下這個(gè)C::*出自哪里,以前沒(méi)見(jiàn)過(guò),類(lèi)似的特殊用法還有什么例子,多謝。

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2012-07-30 21:24 |只看該作者
這應(yīng)該是 指向類(lèi)成員變量指針 , 你可看看它是如何實(shí)例化的 ...
還有一種是 成員函數(shù)指針 Type (C::*fun)( ... ) ;

論壇徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16賽季CBA聯(lián)賽之青島
日期:2016-07-05 12:36:0515-16賽季CBA聯(lián)賽之廣東
日期:2016-06-29 11:45:542015亞冠之全北現(xiàn)代
日期:2015-07-22 08:09:472015年辭舊歲徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39獅子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技術(shù)圖書(shū)徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
3 [報(bào)告]
發(fā)表于 2012-07-30 22:35 |只看該作者
回復(fù) 2# Moon_Bird
我給他寫(xiě)個(gè)例子吧,容易理解些
  1. #include <iostream>
  2. using namespace std;

  3. struct foo
  4. {
  5.         int bar;
  6.         int baz;
  7.         int qux( int v ) const
  8.         {
  9.                 return bar+baz+v;
  10.         }
  11.        
  12.         foo() : bar(1), baz(2)
  13.         {
  14.         }
  15. };

  16. void fun1( foo& a, int foo::* memvar )
  17. {
  18.         cout << a.*memvar << endl;
  19. }

  20. void fun2( foo& a, int (foo::*memfun)(int v) const )
  21. {
  22.         cout << (a.*memfun)(3) << endl;
  23. }

  24. int main( void )
  25. {
  26.         foo a;
  27.         fun1( a, &foo::bar ); // output 1
  28.         fun1( a, &foo::baz ); // output 2
  29.         fun2( a, &foo::qux ); // output 6

  30.         return 0;
  31. }
復(fù)制代碼

論壇徽章:
14
巨蟹座
日期:2013-11-19 14:09:4615-16賽季CBA聯(lián)賽之青島
日期:2016-07-05 12:36:0515-16賽季CBA聯(lián)賽之廣東
日期:2016-06-29 11:45:542015亞冠之全北現(xiàn)代
日期:2015-07-22 08:09:472015年辭舊歲徽章
日期:2015-03-03 16:54:15巨蟹座
日期:2014-12-29 08:22:29射手座
日期:2014-12-05 08:20:39獅子座
日期:2014-11-05 12:33:52寅虎
日期:2014-08-13 09:01:31巳蛇
日期:2014-06-16 16:29:52技術(shù)圖書(shū)徽章
日期:2014-04-15 08:44:01天蝎座
日期:2014-03-11 13:06:45
4 [報(bào)告]
發(fā)表于 2012-07-30 22:42 |只看該作者
“C::*是什么意思” 應(yīng)該改為 “int C::*是什么意思”
int  * 是個(gè)指向int類(lèi)型變量的指針,那么 int C::* 就是個(gè)『C中 指向int類(lèi)型變量的指針』

論壇徽章:
11
摩羯座
日期:2013-09-16 11:10:272015亞冠之阿爾薩德
日期:2015-06-12 22:53:29午馬
日期:2014-04-15 11:08:53亥豬
日期:2014-03-02 23:46:35申猴
日期:2013-12-06 22:07:00亥豬
日期:2013-11-28 12:03:13雙魚(yú)座
日期:2013-11-21 14:43:56亥豬
日期:2013-10-23 10:55:49處女座
日期:2013-10-17 18:15:43午馬
日期:2013-09-27 17:40:4215-16賽季CBA聯(lián)賽之青島
日期:2016-06-22 00:45:55
5 [報(bào)告]
發(fā)表于 2012-07-30 23:55 |只看該作者
bruceteen 發(fā)表于 2012-07-30 22:42
“C::*是什么意思” 應(yīng)該改為 “int C::*是什么意思”
int  * 是個(gè)指向int類(lèi)型變量的指針,那么 int C::*  ...


贊—— :)

“C::”這個(gè)東東,是個(gè)“上綴”(相對(duì)于“前綴”、“后綴”):它從上面綴下來(lái),插入到int和星號(hào)之間。

int和星號(hào)永遠(yuǎn)藕斷絲連,要結(jié)合起來(lái)解讀,即:一個(gè)指向int類(lèi)型的變量的指針。

int是靶,星號(hào)是矢(請(qǐng)記。菏ザ肥啃鞘福瑯侵靼寻凶觼G了,就無(wú)的放矢了。

論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2012-07-31 09:14 |只看該作者
多謝各位教誨,向你們學(xué)習(xí)!

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2012-07-31 14:01 |只看該作者
::* 還有 ::->非常不常用
算是高級(jí)運(yùn)算符了。
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專(zhuān)區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過(guò)ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP