C++11系列學習之六-----for

前言
?? ?C++11這次的更新帶來了令很多C++程序員期待已久的for range循環,每次看到javascript, lua里的for range,心想要是C++能有多好,心里別提多酸了。這次C++11不負眾望,再也不用羨慕別家人的for range了。

使用場景

ex1:遍歷字符串

std::string str = "hello, world";  
for(auto ch : str) {  std::cout << ch << std::endl;  
}  


遍歷str,輸出每個字符,同時用上auto,簡直是如虎添翼。

ex2:遍歷數組

int arr[] = {1, 2, 3, 4};  
for(auto i : arr) {  std::cout<< i << std::endl;  
}  


不用知道數組容器的大小,即可方便的遍歷數組。

ex3:遍歷stl 容器

std::vector<std::string> str_vec = {"i", "like",  "google"};  
for(auto& it : str_vec) {  it = “c++”;  
}  

在這段程序中,可以返回引用值,通過引用可以修改容器內容。然后用到了初始化列表,在下一篇文章中,將會介紹。

ex4:遍歷stl map?

std::map<int, std::string> hash_map = {{1, "c++"}, {2, "java"}, {3, "python"}};  
for(auto it : hash_map) {  std::cout << it.first << "\t" << it.second << std::endl;  
}  

遍歷map返回的是pair變量,不是迭代器。

轉載自:《C++11 之for 新解

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/259191.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/259191.shtml
英文地址,請注明出處:http://en.pswp.cn/news/259191.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ArcGIS Engine 10開發環境的一些常見問題(轉載)

轉自&#xff1a;http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid107612&extra&page1 許多版友在剛剛使用ArcGIS 10做開發的時候&#xff0c;都會遇到這樣那樣的問題。在擔任實習版主的這一個多月里&#xff0c;看到了這么幾個與開發環境相關的問題&#xff0c;重…

@value 靜態變量_面試官:為什么靜態方法不能調用非靜態方法和變量?

這個可能很多人之前學習jvm的時候都會遇到&#xff0c;屬于一個小問題&#xff0c;寫這篇文章的原因是我在看java相關的面試題目中遇到的&#xff0c;因此順手總結一下&#xff1a;一、例子我們先看效果&#xff1a;我們在靜態方法main中調用非靜態變量或者是方法都會報錯。我們…

SpringMVC連接多數據源配置

在spring-config-datasource.xml中配置&#xff1a; <ds:ibatis-config><ds:sql-map-clientid"sqlMapClient2"datasource-ref"riskBasicDataSource2"config-location"classpath:sqlmap-config.xml"/> </ds:ibatis-config> <…

Memcached 工作原理

http://hzp.iteye.com/blog/1872664Memcached處理的原子是每一個&#xff08;key&#xff0c;value&#xff09;對&#xff08;以下簡稱kv對&#xff09;&#xff0c;key會通過一個hash算法轉化成hash-key&#xff0c;便于查找、對比以及做到盡可能的散列。同時&#xff0c;mem…

C++11系列學習之七---------初始化列表

一、前言C的學習中&#xff0c;我想每個人都被變量定義和申明折磨過&#xff0c;比如我在大學筆試過的幾家公司&#xff0c;都考察了const和變量&#xff0c;類型的不同排列組合&#xff0c;讓你區別有啥不同。反正在學習C過程中已經被折磨慣了&#xff0c;今天再來看看重溫下那…

c# streamReader轉XmlDocument讀取節點

http獲得web&#xff08;url&#xff09;請求&#xff0c;先是獲得數據流streamreader&#xff0c;之后將String數據流轉換為xmldocument&#xff0c;之后xmlnode讀取節點。 // get the responseWebResponse webResponse webRequest.GetResponse();if (webResponse null){ re…

ad中電容用什么封裝_用什么來降低噪聲?只要幾個電容器就可以,簡單有效!...

使用電容器降低噪聲噪聲分很多種&#xff0c;性質也是多種多樣的。所以&#xff0c;噪聲對策(即降低噪聲的方法)也多種多樣。在這里主要談開關電源相關的噪聲&#xff0c;因此&#xff0c;請理解為DC電壓中電壓電平較低、頻率較高的噪聲。另外&#xff0c;除電容外&#xff0c;…

C#委托的介紹(delegate、Action、Func、predicate)

委托是一個類&#xff0c;它定義了方法的類型&#xff0c;使得可以將方法當作另一個方法的參數來進行傳遞。事件是一種特殊的委托。 1.委托的聲明 (1). delegate delegate我們常用到的一種聲明 Delegate至少0個參數&#xff0c;至多32個參數&#xff0c;可以無返回值&#xff0…

版本1.8.1Go安裝以及語法高亮配置

注意點&#xff1a;普通用戶和root用戶高亮要設置兩遍①下載go安裝包 https://golang.org/doc/ 最新的版本&#xff1a;go1.8.1.linux-amd64.tar.gz ②進入主目錄&#xff1a;$:su ~賦給普通用戶root權限&#xff0c;以便執行tar命令&#xff1a;$:su root 把壓縮包解壓到/usr/…

求二叉樹中節點的最大距離

struct node{ Node Left; Node Right; int MaxLeft;//左子樹到該節點的最長距離 int MaxRight;//右子樹到該節點的最長距離 char chValue; }; void FindMaxLen(Node T) { int tmpMax 0; if (NULL T) { return; } if (NULL T->Left) { T->MaxLeft 0; } if (NULL T-&g…

flutter 自定義鍵盤_入門級機械鍵盤選購對比

個人覺得鍵盤這種東西&#xff0c;手感是最重要的&#xff0c;畢竟鍵盤是要拿用的&#xff0c;不是拿來供的。不管鍵盤再怎么好看、酷炫&#xff0c;只要你用起來不舒服、不習慣&#xff0c;那對你而言&#xff0c;就不會是一把好鍵盤。那么&#xff0c;影響手感的因素主要有哪…

騰訊2016校招試題----------格雷碼的實現

問題&#xff1a;產生n位元的所有格雷碼。格雷碼(Gray Code)是一個數列集合&#xff0c;每個數使用二進位來表示&#xff0c;假設使用n位元來表示每個數字&#xff0c;任兩個數之間只有一個位元值不同。例如以下為3位元的格雷碼&#xff1a; 000 001 011 010 110 111 101 100 。…

關于A/D方面的小結

&#xff08;轉載&#xff09;AD精度與分辨率 最近做了一塊板子&#xff0c;當然考慮到元器件的選型了&#xff0c;由于指標中要求精度比較高&#xff0c;所以對于AD的選型很慎重。 很多人對于精度和分辨率的概念不清楚&#xff0c;這里我做一下總結&#xff0c;希望大家不要…

常用表的字段

F:\study\表的設計 一&#xff1a;網站設置有哪些內容&#xff1a; 1>title 表題 2>logo 3>keyword 關鍵字 4>status 是否開啟 5>Internet 備案號 6>url 網址 7>tel 聯系電話 8>brief …

四個好看的CSS樣式表格

1. 單像素邊框CSS表格 這是一個非經常常使用的表格樣式。 源碼&#xff1a; <!-- CSS goes in the document HEAD or added to your external stylesheet --> <style type"text/css"> table.gridtable { font-family: verdana,arial,sans-serif; font-si…

C# COM ArcgisEngine 多線程相關

這段時間做ArcgisEngine&#xff0c;因為在做圖形交叉分析時&#xff0c;計算數據分多個線程分別計算不同的圖形&#xff0c;發現計算錯誤。后來初步了接了是由于所有的ArcObjects組件都被標記為單線程單元&#xff08;STA參考VS幫助文檔&#xff09;。每個STA都限制在一個線程…

loading initial ramdisk 卡住_驛站晨讀 | 一城市多家快遞“卡住了”!有快遞網點直接建議:換別家吧......

編輯&#xff1a;驛站老鬼 主播&#xff1a;若晨?▎美團回應“外賣小哥致電取餐被打成顱腦損傷”10月15日晚&#xff0c;成都溫江區某小區內發生一起顧客毆打外賣員事件&#xff0c;導致外賣員馮某東輕度顱腦損傷以及右膝外側半月板撕裂。據了解&#xff0c;事件起因是顧客要…

CVTE2016校招試題摘選

今年的題分兩部分&#xff0c;時間為晚上7:00-9:30,題目分不定項選擇與兩道編程題。 下面是我自己抄下來的一部分題&#xff0c;盡饗讀者。 1.堆排序屬于下面哪種排序方法&#xff1f; A、選擇排序 B、插入排序、C、交換排序 D、歸并排序 答案&#xff1a; A 2. 用RSA算法…

高手的經驗 硬件

一個硬件高手的設計經驗分享(ZT)大字體 樓主 一&#xff1a;成本節約現象一&#xff1a;這些拉高/拉低的電阻用多大的阻值關系不大&#xff0c;就選個整數5K吧點評&#xff1a;市場上不存在5K的阻值&#xff0c;最接近的是 4.99K&#xff08;精度1%&#xff09;&#xff0c;其…

JavaScript大神用代碼帶你揭秘吉普賽古老神秘讀心術

javascript/HTML5課題&#xff1a;javascript開發讀心術游戲PS:大爆料&#xff01;javascript解密讀心術游戲背后故事知識點&#xff1a;讀心術原理算法獨家揭秘&#xff0c;HTML5最新選擇器&#xff0c;原生javascript動態DOM生成&#xff0c;判斷與循環講解&#xff0c;函數封…