C++笔记-断言、静态断言、R转义符
生活随笔
收集整理的這篇文章主要介紹了
C++笔记-断言、静态断言、R转义符
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
?
?
斷言
靜態(tài)斷言
R轉(zhuǎn)義符
?
斷言
在assert.h和cassert中有這3個(gè)短語,可以獲取當(dāng)前文件,第幾行、哪個(gè)函數(shù)。
感覺這個(gè)在Linux調(diào)試上十分有用,在此記錄下!
程序運(yùn)行截圖如下:
源碼如下:
#include <iostream> #include <cassert> using namespace std;int main(int *argc, int *argv[]){cout << __FILE__ << endl;cout << __LINE__ << endl;cout << __FUNCTION__ << endl;getchar();return 0; }還有個(gè)__TIME__,這個(gè)感覺不是很有作用,在此不演示了!
?
靜態(tài)斷言
這個(gè)靜態(tài)斷言感覺和Spring Boot里的assert差不多,但功能比他差遠(yuǎn)啦,感覺只能在單例測試的使用用得到,在此記錄下,以后單例測試的時(shí)候用
程序運(yùn)行截圖如下:
源碼如下:
#include <iostream> #include <cassert> using namespace std;int main(int *argc, int *argv[]){cout << __FILE__ << endl;cout << __LINE__ << endl;cout << __FUNCTION__ << endl;int temp[] = {1, 2, 3, 4, 5, 6, 7, 8};cout << sizeof(temp) / sizeof(temp[0]) << endl;static_assert((sizeof(temp) / sizeof(temp[0])) < 5 , "Error! the size >= 5" );getchar();return 0; }?
R轉(zhuǎn)義符
這個(gè)在讀取文件配置的時(shí)候用得到,可以少寫幾個(gè)字符!
源碼如下:
#include <iostream> #include <string>using namespace std;int main() {string path = R"(E:\vs2012\assertDemo\assertDemo\Debug)";cout << path << endl;return 0; }感覺這些用法在Qt上都很雞肋,估計(jì)在純linux C++中作用會相當(dāng)大!
總結(jié)
以上是生活随笔為你收集整理的C++笔记-断言、静态断言、R转义符的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTTP之Redirect和Locati
- 下一篇: 前端笔记-Vue cli中使用axios