青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

posts - 18,  comments - 104,  trackbacks - 0

 

最近最大的新聞莫過于微軟發布Visual Studio2010了,對c++的支持更進一步,其intellsence的解析也使用了和以前完全不同的方法(以前是靠編譯器,現在是獨立inellsence單元),番茄可能要被打入冷宮了。

Stephan T. Lavavej在Visual c++ Team Blog上發布了VC10對C++0x標準的支持情況,包括:
lambdas, auto, static_assert and rvalue references,他的博客是針對CTP版本的。

我下載安裝了VC10 beta1 professional,感覺除了卡,沒啥不好的,新的intellsence和Java,C#一樣,即時分析代碼,并在有語法錯誤的地方畫上紅線。但是好像intellsence的語法不支持C++0x的,在右值引用,Lambda的地方,也畫紅線。


對于Stephan T. Lavavej寫的

Rvalue References: C++0x Features in VC10, Part 2

我并沒有打算全部翻譯,有興趣可以讀原文,我只把我認為重要的地方翻譯出來,順序也調整了一下,水平有限,附上原文。

C++03 3.10/1 says: "Every expression is either an lvalue or an rvalue."  It's important to remember that lvalueness versus rvalueness is a property of expressions, not of objects.
C++03 3.10/1 提到:"任何一個表達式,不是左值,就是右值",左值或者右值是針對表達式而言的,object沒有左右值之分,應該時刻謹記這一點。

Both lvalues and rvalues can be either modifiable (non-const) or non-modifiable (const).  Here are examples:

 左值和右值都有const 和非const之分,下面是一個例子:

 1string one("cute");
 2
 3const string two("fluffy");
 4
 5string three() return "kittens"; }
 6
 7const string four() return "are an essential part of a healthy diet"; }
 8
 9 
10
11one;     // modifiable lvalue
12
13two;     // const lvalue
14
15three(); // modifiable rvalue
16
17four();  // const rvalue
18

Type& binds to modifiable lvalues (and can be used to observe and mutate them). 

Type& 只能綁定非const左值(可以觀察和修改)。

const Type& binds to everything: modifiable lvalues, const lvalues, modifiable rvalues, and const rvalues (and can be used to observe them).

const Type& 可以綁定所有類型:非const左值,const左值,非const右值和const右值(只可以觀察)。

上面這些都是03的標準,然而這對move語義和完美轉發的實習,確實是一種障礙。關于move語義和完美轉發,請看《C++0x漫談》系列之:右值引用 或“move語意與完美轉發”(上)《C++0x漫談》系列之:右值引用 或“move語意與完美轉發”(下)

move語義就是怎么能在非const右值銷毀之前,將其中仍有用的資源竊取過來,以求高效。這就需要語言本身能識別非const右值,03中,語言本身不支持,只能靠入侵的方式實現。0x中,在語言層面上得到了支持,用&&表示非const右值。下面看看0x為了支持右值,進行了那些修正。

下面是關于函數左右值的重載決議:
1 .  The initialization rules have veto power.

初始化規則具有否決權(否決權指對所有候選函數,如果有參數根本不能轉化,就放棄考慮,比如把一個const type轉化為type)。

2 .  Lvalues strongly prefer binding to lvalue references, and rvalues strongly prefer binding to rvalue references.

左值優先綁定左值,右值優先綁定右值。

3 .  Modifiable expressions weakly prefer binding to modifiable references.

非const表達式趨向于綁定非const引用。

正常情況下:
 1#include <iostream>
 2
 3#include <ostream>
 4
 5#include <string>
 6
 7using namespace std;
 8
 9 
10
11void meow(string& s) {
12
13    cout << "meow(string&): " << s << endl;
14
15}

16
17 
18
19void meow(const string& s) {
20
21    cout << "meow(const string&): " << s << endl;
22
23}

24
25 
26
27void meow(string&& s) {
28
29    cout << "meow(string&&): " << s << endl;
30
31}

32
33 
34
35void meow(const string&& s) {
36
37    cout << "meow(const string&&): " << s << endl;
38
39}

40
41 
42
43string strange() {
44
45    return "strange()";
46
47}

48
49 
50
51const string charm() {
52
53    return "charm()";
54
55}

56
57 
58
59int main() {
60
61    string up("up");
62
63    const string down("down");
64
65 
66
67    meow(up);
68
69    meow(down);
70
71    meow(strange());
72
73    meow(charm());
74
75}

76
77 
78
79C:\Temp>cl /EHsc /nologo /W4 four_overloads.cpp
80
81four_overloads.cpp
82
83 
84//output
85
86meow(string&): up
87
88meow(const string&): down
89
90meow(string&&): strange()
91
92meow(const string&&): charm()
93
94

In practice, overloading on Type& , const Type& , Type&& , and const Type&& is not very useful.  A far more interesting overload set is const Type& and Type&& :

在實踐中,重載所有的4個版本沒有意義,而我們更傾向于使用const string& 和string&&:
例子:
 1C:\Temp>type two_overloads.cpp
 2
 3#include <iostream>
 4
 5#include <ostream>
 6
 7#include <string>
 8
 9using namespace std;
10
11 
12
13void purr(const string& s) {
14
15    cout << "purr(const string&): " << s << endl;
16
17}

18
19 
20
21void purr(string&& s) {
22
23    cout << "purr(string&&): " << s << endl;
24
25}

26
27 
28
29string strange() {
30
31    return "strange()";
32
33}

34
35 
36
37const string charm() {
38
39    return "charm()";
40
41}

42
43 
44
45int main() {
46
47    string up("up");
48
49    const string down("down");
50
51 
52
53    purr(up);
54
55    purr(down);
56
57    purr(strange());
58
59    purr(charm());
60
61}

62
63 
64
65C:\Temp>cl /EHsc /nologo /W4 two_overloads.cpp
66
67two_overloads.cpp
68
69 
70
71// output
72
73purr(const string&): up
74
75purr(const string&): down
76
77purr(string&&): strange()
78
79purr(const string&): charm()
80
81


For purr(up) , the initialization rules veto neither purr(const string&) nor purr(string&&) .  up is an lvalue, so it strongly prefers binding to the lvalue reference purr(const string&) .  up is modifiable, so it weakly prefers binding to the modifiable reference purr(string&&) .  The strongly preferred purr(const string&) wins.

對于 purr(up) ,決議(1)沒有否決 purr(const string&) 和 purr(string&&) ,up是左值,所以依照決議(2),它優先綁定左值purr(const string&) ,依照決議(3),它趨向于綁定非const右值 purr(string&&) ,所以左值勝出:purr(const string&) 。

For purr(down) , the initialization rules veto purr(string&&) due to const correctness, so purr(const string&) wins by default.

對于For purr(down),決議(1)以為const否決了 purr(string&&) ,所以選擇purr(const string&)。

For purr(strange()) , the initialization rules veto neither purr(const string&) nor purr(string&&) .  strange() is an rvalue, so it strongly prefers binding to the rvalue reference purr(string&&) .  strange() is modifiable, so it weakly prefers binding to the modifiable reference purr(string&&) .  The doubly preferred purr(string&&) wins.

 對于purr(strange()),決議(1)都沒有否決,strange() 是右值,所以依照決議(2),優先綁定右值purr(string&&),依照決議(3),strange() 是非const,趨向于綁定非const,所以purr(string&&) 兩票獲勝。

For purr(charm()) , the initialization rules veto purr(string&&) due to const correctness, so purr(const string&) wins by default.

對于purr(charm()), 初始化決議(1)否決了非const的purr(string&&) ,所以選擇purr(const string&) 。

先寫這么多吧,明天再寫。
posted on 2009-05-27 23:17 尹東斐 閱讀(1858) 評論(3)  編輯 收藏 引用

FeedBack:
# re: Rvalue References: C++0x Features in VC10 (一)
2009-05-28 09:03 | 飄飄白云
我正在譯言上翻譯Stephan T. Lavavej這一系列的三篇文章,不過剛開始翻譯第一篇,哈哈,你已經翻第二篇了,到時候借鑒了~~  回復  更多評論
  
# re: Rvalue References: C++0x Features in VC10 (一)
2009-05-28 16:37 | 尹東斐
@飄飄白云

我只是覺得這個rvalue reference是最重要的特性,可以不知不覺的增加效率,所以就決定寫點什么。  回復  更多評論
  
# re: Rvalue References: C++0x Features in VC10 (一)[未登錄]
2009-05-28 17:18 | king
高薪招聘:手機游戲開發等各類手機行業人才
職位描述: 手機游戲開發高級工程師
要求:
1.大專以上學歷,做手機游戲開發至少三年以上。
2.熟悉J2ME和C++等工作專業知識

招聘:手機軟件經理/資深工程師
職位描述:
1. 至少三年以上手機制造企業或相關企業專職開發工作經驗,熟悉下列手機開發平臺一種或多種:MTK,展訊,英飛凌,coolsand平臺,google的android或其他開發平臺
2. 熟悉 c/c++,對 java 有一定了解
3. 熟悉 MFC ,能夠熟練使用 VC ,懂e-VC
4. 熟悉TCP/IP、HTTP,了解各種互聯網應用(如browser,email,IM);

手機銷售總監及經理(海外市場)
工作職責:
1.銷售體系完善,銷售策略優化。 2.銷售團隊管理,提升銷售業績。
具體要求如下:
1.五年以上手機海外銷售相關經驗,銷售區域最好在東南亞,中東,非洲地區或其他發展中國家。
2.三年以上高級銷售經理或總監管理經驗
3. 英語流利溝通,或會法語或日語或其他外語的優先。

手機銷售總監及經理(國內市場):
1.熟悉國內手機市場,銷售模式及分銷渠道
2.有一定的客戶資源及代理商、分銷售商資源
3.有銷售戰略意識,優秀的戰術管理能力及團隊領導能力

射頻方向(6人 RF/RFID)
1 本科以上學歷,電子或通信專業;
2 熟悉MSP430單片機,能獨立負責項目研發工作;
3 熟悉和精通 cc1100 cc2500 cc1101等TI CHIPCON產品優先;
4 熟悉精通無線傳感器網絡,低速率低功耗無線個域網;
5 熟練精通C/C++程序設計,有多年軟件開發經驗者優先;
6 熟悉有源RFID,無源RFID者優先;
7 有豐富射頻開發經驗者優先考慮。

職位要求: 射頻方向(6人 RF/RFID)
1 本科以上學歷,電子或通信專業;
2 熟悉MSP430單片機,能獨立負責項目研發工作;
3 熟悉和精通 cc1100 cc2500 cc1101等TI CHIPCON產品優先;
4 熟悉精通無線傳感器網絡,低速率低功耗無線個域網;
5 熟練精通C/C++程序設計,有多年軟件開發經驗者優先;
6 熟悉有源RFID,無源RFID者優先;
7 有豐富射頻開發經驗者優先考慮。

基帶工程師
職位描述: 主要工作職責:
1、主要從事基帶硬件電路設計、硬件調試、故障分析定位、客戶硬件支持等工作;
2、從事音頻調試工作;
3、從事物料評估、選型、認證等工作;
4、負責項目試產的技術支持,生產過程中硬件相關問題的現場解決。
職位要求: 任職要求:
1、學歷:本科或以上學歷;
2、專業:通訊、電子工程、計算機等相關專業;
3、工作經歷:2年硬件開發工作經驗,有3G開發經驗者優先;
4、其他:項目涉及異地開發,需有良好的溝通能力,能適應出差,良好的英文讀寫能力。


備注: 本公司是專做手機行業的獵頭公司,現為中國區域內多家知名手機企業招聘多名手機銷售管理人才,根據資歷定年薪,待遇優厚,上不封頂,工作地點根據候選人意向可協商(不限于深圳,上海,北京,廣州,其他地區也有我公司客戶需求)歡迎手機行業各類高級人才朋友聯系我們(加QQ、MSN、手機),通過人才自薦或有獎推薦他人成為您職業生涯中的朋友。本招聘信息長期有效,聯系人:king
聯系電話:15889433717 QQ:877211649(手機行業) MSN:yclhr@yclhr.com
  回復  更多評論
  
<2009年5月>
262728293012
3456789
10111213141516
17181920212223
24252627282930
31123456

常用鏈接

留言簿(4)

隨筆檔案

文章分類

文章檔案

相冊

好友博客

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲蜜桃精久久久久久久 | 亚洲欧美日韩精品在线| 亚洲激情成人| 欧美va天堂在线| 亚洲第一免费播放区| 欧美电影在线观看完整版| 欧美激情欧美狂野欧美精品| 亚洲电影免费在线观看| 一区二区三区精密机械公司| 午夜激情综合网| 久久久在线视频| 欧美巨乳在线观看| 国产精品美女久久久浪潮软件 | 亚洲国产一区二区三区在线播 | 尤物在线精品| 亚洲精品欧美激情| 亚洲免费人成在线视频观看| 性做久久久久久免费观看欧美| 久久不见久久见免费视频1| 免费看亚洲片| 亚洲特级片在线| 欧美大色视频| 国产亚洲福利一区| 99精品欧美一区| 久久综合久久久久88| 亚洲精品免费观看| 欧美有码视频| 欧美日韩精品免费观看视频完整 | 欧美高清免费| 国产欧美日韩中文字幕在线| 91久久精品一区| 久久精品首页| 在线一区二区三区四区五区| 欧美成人69| 激情综合视频| 亚洲欧美日韩在线播放| 亚洲国产成人午夜在线一区| 亚洲综合日韩在线| 欧美日韩精品福利| 99精品国产福利在线观看免费 | 亚洲午夜一二三区视频| 欧美成人有码| 一区国产精品| 久久黄色网页| 亚洲专区一二三| 欧美亚洲第一页| 一本色道久久综合| 亚洲黄色精品| 欧美激情 亚洲a∨综合| 亚洲国产日韩欧美在线图片| 欧美在线影院在线视频| 亚洲视频自拍偷拍| 欧美亚男人的天堂| 日韩视频在线免费| 亚洲国产另类 国产精品国产免费| 午夜精品久久久久影视 | 国产精品亚洲不卡a| 中文久久乱码一区二区| 最近中文字幕mv在线一区二区三区四区| 欧美中文字幕视频在线观看| 国产精品免费小视频| 亚洲午夜av| 亚洲美女在线国产| 欧美色道久久88综合亚洲精品| 亚洲靠逼com| 国内精品国语自产拍在线观看| 一区二区三区在线视频免费观看| 久久超碰97中文字幕| 欧美在线观看一二区| 国精产品99永久一区一区| 久久久一区二区| 美女精品网站| 99视频一区| 中国av一区| 国产日韩亚洲欧美精品| 久久久亚洲国产美女国产盗摄| 久久本道综合色狠狠五月| 尤物网精品视频| 亚洲高清资源| 欧美午夜电影在线| 欧美中文在线视频| 久久精品国产精品亚洲| 亚洲国产一区二区三区高清| 日韩午夜在线观看视频| 国产精品一区二区三区乱码| 久久国产精品第一页| 免费欧美高清视频| 亚洲在线国产日韩欧美| 久久不射中文字幕| 亚洲乱码国产乱码精品精| 亚洲一区二区三区乱码aⅴ蜜桃女| 国产日韩一区二区| 亚洲级视频在线观看免费1级| 国产精品久久久一区二区三区| 久久久久久**毛片大全| 欧美极品aⅴ影院| 香蕉久久一区二区不卡无毒影院 | 亚洲午夜精品国产| 亚洲国产精彩中文乱码av在线播放| 最新亚洲电影| 国产视频久久久久| 亚洲电影av| 国产婷婷成人久久av免费高清| 欧美成人午夜77777| 国产精品素人视频| 亚洲精品免费观看| 亚洲国产成人精品久久久国产成人一区| 亚洲麻豆一区| 亚洲国内精品在线| 久久久精品一区| 性欧美超级视频| 欧美丝袜一区二区| 亚洲国产精品日韩| 在线电影院国产精品| 亚洲一区二区三区乱码aⅴ| 一本色道88久久加勒比精品 | 欧美日韩精品一本二本三本| 久久永久免费| 国产精品一二三视频| 亚洲精品美女免费| 亚洲大胆人体视频| 在线精品一区二区| 亚洲激精日韩激精欧美精品| 狠狠色狠色综合曰曰| 亚洲综合导航| 亚洲一二三区视频在线观看| 欧美国产亚洲精品久久久8v| 毛片一区二区| 在线成人国产| 久久久久久久97| 久久―日本道色综合久久| 国产乱子伦一区二区三区国色天香| 亚洲人成网在线播放| 亚洲人精品午夜| 久久久综合视频| 免费成年人欧美视频| 1769国内精品视频在线播放| 久久精品免视看| 鲁大师成人一区二区三区| 黄色小说综合网站| 久久久久国产一区二区三区| 久久亚洲捆绑美女| 亚洲国产精品嫩草影院| 久久伊人免费视频| 欧美大片一区二区| 亚洲精品国产无天堂网2021| 欧美国产在线观看| 亚洲久久一区| 亚洲宅男天堂在线观看无病毒| 欧美视频中文字幕在线| 亚洲一区日本| 久久免费黄色| 亚洲欧洲美洲综合色网| 欧美韩国日本综合| 一本久道久久综合婷婷鲸鱼| 亚洲视频在线二区| 国产日韩专区在线| 久久中文字幕一区| 亚洲看片网站| 久久精品欧美| 亚洲高清在线观看| 欧美精品www在线观看| 一本一道久久综合狠狠老精东影业 | 久久久精品午夜少妇| 国内免费精品永久在线视频| 老司机一区二区三区| 亚洲精品日韩综合观看成人91| 亚洲制服欧美中文字幕中文字幕| 国产精品久久激情| 久久―日本道色综合久久| 最新成人av在线| 欧美中文字幕视频| 亚洲精品一二三| 国产伦精品一区二区三区在线观看 | 亚洲伦理精品| 国产精品九九| 老鸭窝亚洲一区二区三区| 国产精品美女久久久久久免费| 亚洲一区二区三区高清| 欧美一区二区三区日韩| 亚洲春色另类小说| 国产精品久久久久久久久久直播| 久久黄色影院| 99在线|亚洲一区二区| 欧美成人精品一区二区三区| 亚洲一区二区三区精品在线观看 | 久久精品导航| 99成人精品| 在线日本高清免费不卡| 国产精品国产自产拍高清av| 快she精品国产999| 亚洲在线1234| 亚洲乱码国产乱码精品精| 久久久久久久欧美精品| 午夜精品理论片| 在线视频精品| 一区二区三区波多野结衣在线观看| 在线观看中文字幕不卡| 国产美女在线精品免费观看| 欧美日本韩国一区二区三区|