亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

庖丁解牛<c++primer>系列三:類型別名和自定義數據結構

2019-11-06 07:07:50
字體:
來源:轉載
供稿:網友

隨著程序越來越復雜,程序中用到的類型也越來越復雜,這種復雜性體現在兩個方面。一是一些類型難于“拼寫”,它們的名字既難記又容易寫錯,還無法明確體現其真實目的和含義。二是有時候根本搞不清到底需要什么類型,不得不回過頭從程序的上下文中尋求幫助**

類型別名(type alias)是一個名字,它是某種類型的同義詞。 主要分為typedef關鍵字和別名聲明兩部分。

typedef關鍵字typedef double wages; //wages和double是同義詞,所表達的意思一樣typedef wages base, *p; //base和double是同義詞,*p和double *是同義詞別名聲明(alias declaration): 用using關鍵字作為別名聲明的開始,后緊跟別名和等號。using SI= Sales_item; //SI和Sales_item 是同義詞

auto類型說明符(c++11新標準):讓編譯器替我們去分析表達式所屬的類型,而且必須有初始值。

auto item=val1+val2;//由val1和val2相加的結果可以推斷出item的類型atuo i=0,*p=&i; //正確,i是整數,p是整形指針atuo sz=0,pi=3.14; //錯誤,sz和pi的類型不一致const int ci=i, &cr=ci;auto b=ci; //b是一個整數auto c=cr; //c是一個整數auto d=&i; //d是一個整形指針auto e=&ci; //e是一個指向整數常量的指針const atuo f=ci; //f是const int

decltype類型指針,作用是選擇并返回操作數的數據類型 decltype(f()) sum=x; //sum類型就是說函數f的返回類型

在處理頂層const和引用時,如果decltype使用的表達式是一個變量,則decltype返回該變量的類型。

const int ci=0,&cj=ci;decltype(ci) x=0; //x的類型為const intdecltype(cj) y=x; //y的類型是const int&,y綁定變量xdecltype(cj) z; //錯誤:z是一個引用,必須初始化//decltype的結果是可以引用的類型int i=42,*p=&i,&r=i;decltype(r+0) b; //正確:加法的結果是int,因此b是intdecltype(*p) c; //錯誤,c是int&,必須初始化

自定義數據結構 數據結構是把一組相關的數據元素組織起來然后使用它們的策略和方法。C++允許用戶以類的形式自定義數據結構,諸如string、istream等也都是以類的形式定義的。 注意:類右側表示結束的花括號必須寫一個分號,這是因為類體后面可以緊跟變量名表示對該類型對象的定義。

struct Sales_data{/*...*/};Sales_data accum,trans,*salesptr;

數據成員(data menber),類的數據成員定義了類的對象的具體內容,每個對象有自己的一份數據成員拷貝。修改一個對象的數據成員,不會影響其它對象。 定義數據成員的方法和定義普通變量一樣:首先說明一個基本類型,隨后緊跟一個或多個聲明符。

頭文件:為了確保各個文件鐘類的定義一致,類通常被定義在頭文件中,而且類所在頭文件的名字必須與類的名字一樣。例如:庫類型string在名為string的頭文件鐘定義。 注意:頭文件一旦被改變,相關的源文件必須重新編譯以獲得更新過的聲明。 預處理器(PReprocessor):確保頭文件多次包含仍能夠安全的工作,預處理器是在編譯之前執行的一段程序,可以部分地改變我們所寫的程序,比如常用的#include,當預處理器看到#include標記的時候就會用指定頭文件的內容代替#include。 頭文件保護符(header guard),頭文件保護符依賴預處理變量,分為已定義和未定義兩種狀態。#define指令把一個名字設定為預處理變量,另外兩個指令則分別檢查某個指定的預處理變量是否已經定義;#ifdef當且僅當已定義為真時,#ifdef當且僅當未定義為真時。一旦檢查結果為真,則執行后續操作直到遇到#endif結束。

#ifndef SALES_DATA_H#define SALES_DATA_H#include<string>struct Sales_data{ std::string bookNo; unsigned units_sold=0; double revenue-0.0;};#endif

第一次包含Sales_data.h時,#ifndef檢查結果為真,預處理器將順序執行后面內容直到遇到#endif結束。這時候預處理變量SALES_DATA_H的值變為已經定義,而且Sales_data.h也會被拷貝到我們程序中,如果再包含Sales_data.h則#ifndef的檢查結果為假,后面不再執行#ifndef到#endif內容。 預處理器變量無視C++語言中關于作用域的規則。為了避免與程序中其它實體發生沖突,一般把預處理器變量名字全部大寫。 提醒:頭文件沒有被包含在任何其他頭文件中,也應該設置保護符。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线看福利67194| 亚洲成人av资源网| 青草成人免费视频| 九九热精品视频国产| www欧美日韩| 欧美性色视频在线| 伊人久久综合97精品| 精品久久香蕉国产线看观看亚洲| 91在线网站视频| 国产欧美精品一区二区| 欧美黑人xxxⅹ高潮交| 国产亚洲欧美日韩一区二区| 日韩欧美国产免费播放| 亚洲一区二区免费在线| 国产欧美精品一区二区三区-老狼| 亚洲精品国产综合久久| 欧美在线观看网站| 亚洲欧美日韩爽爽影院| 国产精品丝袜白浆摸在线| 国产香蕉97碰碰久久人人| 亚洲深夜福利网站| 国语自产精品视频在线看| 亚洲天堂色网站| 日韩免费在线播放| 国产成人精品一区二区三区| 亚洲人午夜精品免费| 日韩在线免费高清视频| 国产成人自拍视频在线观看| 久久亚洲精品一区| 欧美激情奇米色| 成人黄在线观看| 国产成人精品999| 欧美美女18p| 久久精品2019中文字幕| 国产美女精品免费电影| 51ⅴ精品国产91久久久久久| 91精品久久久久久久久久入口| 在线播放国产精品| www.亚洲一区| 国产精品久久久久久av| 福利视频一区二区| 国产精品久久久久久久久借妻| 精品日本高清在线播放| 91美女福利视频高清| 国产69久久精品成人| 国产精品旅馆在线| 色综久久综合桃花网| 成人激情视频免费在线| 日韩精品在线免费观看| 中文字幕亚洲激情| 欧美精品免费播放| 成人免费视频在线观看超级碰| 一本色道久久综合狠狠躁篇怎么玩| 久久久精品一区二区三区| 国产精品丝袜白浆摸在线| 91最新在线免费观看| 久久久久久久久久婷婷| 欧美大尺度电影在线观看| 午夜伦理精品一区| 亚洲第一中文字幕| 久久天天躁狠狠躁老女人| 欧美色欧美亚洲高清在线视频| 亚洲国产精品网站| 91国语精品自产拍在线观看性色| 九色91av视频| 日韩av日韩在线观看| 国产午夜精品久久久| 日韩av在线影视| 日韩欧美精品免费在线| 色一区av在线| 亚洲精品一区二区久| 国产免费观看久久黄| 欧美一区二区三区艳史| 欧美裸体xxxxx| 欧美日韩国产丝袜美女| 欧美精品激情在线观看| 亚洲国语精品自产拍在线观看| 欧美黄色片免费观看| 亚洲成人av在线播放| 97婷婷大伊香蕉精品视频| 91在线视频成人| 欧美日韩国产二区| 日韩中文字幕av| 国产va免费精品高清在线观看| 国产最新精品视频| 欧美日韩国产精品专区| 久久男人av资源网站| 亚洲美女自拍视频| 日韩日本欧美亚洲| 国产脚交av在线一区二区| 91在线观看免费高清| 国产精品久久久久久av福利| 中文字幕日韩视频| 亚洲天堂av在线播放| 影音先锋欧美在线资源| 国产免费观看久久黄| 18一19gay欧美视频网站| 国产精品久久久久久久av大片| 亚洲免费视频观看| 国产精品私拍pans大尺度在线| 欧美性极品xxxx娇小| 久久韩国免费视频| 欧美成人精品在线| 国产精品久久久久免费a∨| 久久香蕉国产线看观看av| 中文字幕久热精品视频在线| 精品久久久久久中文字幕| 久久777国产线看观看精品| 国产一区二区三区中文| 精品无人区乱码1区2区3区在线| 亚洲欧美日韩中文在线制服| 成人福利视频网| 亚洲成人av资源网| 97热在线精品视频在线观看| 成人春色激情网| 国产精品jvid在线观看蜜臀| 国产精品久久久久久久久久东京| 国产精品美乳一区二区免费| 亚洲精品在线观看www| 97超碰国产精品女人人人爽| 亚洲伊人成综合成人网| 国产91免费看片| 久久久亚洲国产天美传媒修理工| 国产精品爽爽ⅴa在线观看| 成人信息集中地欧美| 超碰91人人草人人干| 久久精品亚洲94久久精品| 色妞久久福利网| 欧美激情在线狂野欧美精品| 亚洲最新av在线网站| 欧美高清视频在线观看| 久久久欧美精品| www.日韩.com| 亚洲第一页中文字幕| 欧美性xxxx| www欧美日韩| 欧美猛男性生活免费| 日韩最新av在线| 日韩视频精品在线| 亚洲人成网7777777国产| 亚洲三级免费看| 精品福利在线视频| 欧美亚州一区二区三区| 久久好看免费视频| 精品国产依人香蕉在线精品| 国产成人精品视频| 日韩高清电影免费观看完整版| 国产日韩欧美在线观看| 亚洲www永久成人夜色| 精品人伦一区二区三区蜜桃网站| 欧美猛少妇色xxxxx| 亚洲天堂免费观看| 国产精品久久久久久久久久东京| 2018日韩中文字幕| 欧美成人免费全部| 97久久超碰福利国产精品…| 91成人在线播放| 久久影院中文字幕| 欧美性猛交xxxx黑人猛交| 国产精品国产亚洲伊人久久| 精品久久久久久亚洲精品| 欧美激情欧美激情在线五月| 亚洲人午夜精品免费| 亚洲免费高清视频|