C語言C加加 修飾符類型
C++ 允許在char、int 和 double數據類型前放置修飾符。修飾符用於改變基本類型的含義,所以它更能滿足各種情境的需求。
下面列出了數據類型修飾符:
signed
unsigned
long
short
修飾符signed、unsigned、long 和 short可應用於整型,signed和unsigned可應用於字元型,long可應用於雙精度型。
想要一起學習C++的可以加裙二四八八九四四三零,裙內有各種資料滿足大家,歡迎加裙
修飾符signed和unsigned也可以作為long或short修飾符的前綴。例如:unsigned long int。
C++ 允許使用速記符號來聲明無符號短整數或無符號長整數。您可以不寫 int,只寫單詞unsigned、short或unsigned、long,int 是隱含的。例如,下面的兩個語句都聲明了無符號整型變數。
unsigned x; unsigned int y;
為了理解 C++ 解釋有符號整數和無符號整數修飾符之間的差別,我們來運行一下下面這個短程序:
實例
#include using namespace std; /* * 這個程序演示了有符號整數和無符號整數之間的差別*/int main(){ short int i; // 有符號短整數 short unsigned int j; // 無符號短整數 j = 50000; i = j; cout
當上面的程序運行時,會輸出下列結果:
-15536 50000
上述結果中,無符號短整數 50,000 的位模式被解釋為有符號短整數 -15,536。
C++ 中的類型限定符
類型限定符提供了變數的額外信息。
C++ 常量
C++ 存儲類
筆記列表
g_t
gt@***ms.org
參考地址
C++提供了關鍵字explicit,可以阻止不應該允許的經過轉換構造函數進行的隱式轉換的發生。聲明為explicit的構造函數不能在隱式轉換中使用。
C++中, 一個參數的構造函數(或者除了第一個參數外其餘參數都有默認值的多參構造函數), 承擔了兩個角色。 1 是個構造器 ,2 是個默認且隱含的類型轉換操作符。
所以, 有時候在我們寫下如 AAA = XXX, 這樣的代碼, 且恰好XXX的類型正好是AAA單參數構造器的參數類型, 這時候編譯器就自動調用這個構造器, 創建一個AAA的對象。
這樣看起來好象很酷, 很方便。 但在某些情況下(見下面權威的例子), 卻違背了我們(程序員)的本意。 這時候就要在這個構造器前面加上explicit修飾, 指定這個構造器只能被明確的調用/使用, 不能作為類型轉換操作符被隱含的使用。
explicit構造函數的作用
解析:
explicit構造函數是用來防止隱式轉換的。請看下面的代碼:
class Test1 { public: Test1(int n) { num=n; }//普通構造函數 private: int num; }; class Test2 { public: explicit Test2(int n) { num=n; }//explicit(顯式)構造函數 private: int num; }; int main() { Test1 t1=12;//隱式調用其構造函數,成功 Test2 t2=12;//編譯錯誤,不能隱式調用其構造函數 Test2 t2(12);//顯式調用成功 return 0; }
Test1的構造函數帶一個int型的參數,代碼23行會隱式轉換成調用Test1的這個構造函數。而Test2的構造函數被聲明為explicit(顯式),這表示不能通過隱式轉換來調用這個構造函數,因此代碼24行會出現編譯錯誤。
普通構造函數能夠被隱式調用。而explicit構造函數只能被顯式調用。
想要一起學習C++的可以加裙二四八八九四四三零,裙內有各種資料滿足大家,歡迎加裙
※下面的C語言代碼可能會產生無限循環看半天才意識到Bug在哪裡
TAG:C加加 |
※C語言/C加加編程學習—坦克大戰小遊戲製作代碼
※C語言C加加編程快速入門系列
※中軟國際哈爾濱ETC:C語言和C加加 哪個效率更高
※從C語言實戰談C語言編程,談談C/C加加今後發展!
※C語言/C加加編程學習—代碼訓練之神奇星空動態繼承
※C語言/C加加編程學習,怎樣判斷某一文件是否存在
※C/C加加大神 編寫聊天機器人 試試手
※有哪些適合新手練手的C/C加加項目
※C語言/C加加編程嵌入式基礎學習之volatile關鍵字
※三所俄羅斯大學將增加加密貨幣課程和學位
※看臉型選髮型,讓髮型給你的顏值加加分
※無處不在的加加林:俄羅斯有個加加林市,還有加加林街
※Opera瀏覽器為智能手機增加加密貨幣保護
※加加食品引入東方資產實施債務重組
※Sa花油麵膜|PICK對面膜,為你的夏日魅力加加分
※寄語加加·養成良好的生活習慣
※C/C加加新手應該怎麼學習,如何學習才有發展
※英國匯款服務平台TransferGo增加加密數字資產交易服務
※22款醬油對比測評:高檔貨加味精,海天、味事達、加加無一例外!
※新功能:Android P將增加加密DNS連接