随笔分类 -  C++

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页
摘要:enum MatchFlag { MatchExactly = 0, MatchContains = 1, MatchStartsWith = 2, MatchEndsWith = 3, MatchRegExp = 4, MatchWildcard = 5, MatchFixedString = 8 阅读全文
posted @ 2020-10-14 16:03 朱小勇 阅读(197) 评论(0) 推荐(0)
摘要:在使用switch case的时候出现这个错误,是因为某个分支里定义了一个局部变量,而此变量可能被其他分支用到,对于其他分支中此变量可能不会被定义。 解决: 1、把此变量放到外面; 2、分支里加{} 阅读全文
posted @ 2020-10-04 22:47 朱小勇 阅读(2023) 评论(0) 推荐(0)
摘要:const不能放在static函数后面,否则报标题错误 阅读全文
posted @ 2020-09-30 14:38 朱小勇 阅读(234) 评论(0) 推荐(0)
摘要:1、容量:capacity是返回这个容器目前已经向内存申请的个数,在这些空间里,如果向容器里增加元素、删除元素,会很高效,而不需要多次向内存申请内存的变化; 2、大小:size是值容器里真实的元素个数。 3、可以在程序初始化的时候默认为容器设置一个合适的大小 m_devices.reserve(50 阅读全文
posted @ 2020-09-30 11:00 朱小勇 阅读(6743) 评论(0) 推荐(1)
摘要:直接强制转换 Field_Type a = (Field_Type)ui->comboBox_type->currentIndex(); Field_Type就是一个枚举 阅读全文
posted @ 2020-09-27 19:15 朱小勇 阅读(2513) 评论(0) 推荐(0)
摘要:一、入门编译 1、新建程序 main.cpp #include <iostream> #include "Person.h" int main() { Person person; return 0; } Person.h #include <iostream> class Person { Per 阅读全文
posted @ 2020-09-24 23:12 朱小勇 阅读(591) 评论(0) 推荐(0)
摘要:1、在函数声明后加入=delete即可将该函数标记,一旦被调用则会导致编译错误。可以将旧版本的函数标记delete。 注意:如果一个函数声明加了delete之后,不能再对其进行定义,不然会报错 #include <iostream> class Person { private: void dele 阅读全文
posted @ 2020-09-24 22:25 朱小勇 阅读(1050) 评论(0) 推荐(1)
摘要:1、问题描述 有这样一个函数 void setInfo(const std::map<std::string,std::string>& config){ std::string a = config["aaa"];} 2、编译现象 如标题 3、解释 config变量是一个const的,但是在内部函 阅读全文
posted @ 2020-09-22 15:11 朱小勇 阅读(5112) 评论(0) 推荐(0)
摘要:1、10进制转16进制字符串 unsigned long long ullValue = 18446744073709551615; char buf[18] = {0}; sprintf(buf, "0x%llX", ullValue); // result: 0xFFFFFFFFFFFFFFFF 阅读全文
posted @ 2020-09-07 23:45 朱小勇 阅读(6848) 评论(3) 推荐(0)
摘要:int result; std::cout << typeid(result).name(); 打印:int 阅读全文
posted @ 2020-09-05 00:58 朱小勇 阅读(5303) 评论(0) 推荐(3)
摘要:struct { unsigned char x1 : 2; unsigned char x2 : 2; unsigned char x3 : 2; unsigned char x4 : 2; } Bunch; /* sizeof(Bunch) => 1 */ struct { unsigned c 阅读全文
posted @ 2020-09-05 00:42 朱小勇 阅读(139) 评论(0) 推荐(0)
摘要:1、1个#用来将变量字符串化 #define toString(s) #s 打印:a 2、2个#用来连接两个字符串 #define link(a,b) a##b 这里的link(a,b)->ab,就是上面的变量 打印:0 阅读全文
posted @ 2020-09-04 23:11 朱小勇 阅读(370) 评论(0) 推荐(0)
摘要:bool GetMinK(unsigned int uiInputNum, int * pInputArray) { bool ret = true; for(int i=0;i<uiInputNum;i++) { for(int j=0;j<uiInputNum-1-i;j++) { int tm 阅读全文
posted @ 2020-07-28 09:30 朱小勇 阅读(252) 评论(0) 推荐(0)
摘要:该关键字告诉编译器,函数中不会发生异常,这有利于编译器对程序做更多的优化。如果在运行时,noexecpt函数向外抛出了异常(如果函数内部捕捉了异常并完成处理,这种情况不算抛出异常),程序会直接终止,调用std::terminate()函数,该函数内部会调用std::abort()终止程序。 举例: 阅读全文
posted @ 2020-07-14 09:42 朱小勇 阅读(274) 评论(0) 推荐(0)
摘要:1、返回宏 #ifndef USE_QT_PRINT #define PRINTF_LOCATION() std::cout<<"ret in:" << __FILE__ << " at:"<<__LINE__ << std:: endl #else #define PRINTF_LOCATION( 阅读全文
posted @ 2020-07-10 15:16 朱小勇 阅读(365) 评论(0) 推荐(0)
摘要:const_cast:仅用于去掉完全同类型的const,volatile约束,不能含有任何其它类型的转换,若不含约束也可以相当于没转换static_cast:使用类型可在继承的方向上向上或向下转换,不进行安全检查。 子类转父类,值、引用、指针形式均可,其中指针还可以是常量 父类转子类,值不可以,引用 阅读全文
posted @ 2020-07-09 16:20 朱小勇 阅读(213) 评论(0) 推荐(0)
摘要:假设A是一个接口类,有一个析构函数是~A;然后B类继承并实现了了A,有一个析构函数~B。内存释放有如下几种情况: 1、A的析构函数是虚函数,父指针或子指针指向子对象 virtual ~A(){} A* a = new B;//或者B* a = new B;delete a; 释放顺序是~B,~A。因 阅读全文
posted @ 2020-07-05 01:23 朱小勇 阅读(919) 评论(0) 推荐(0)
摘要:1、在很多库经常看到这样的写法: B.h: class A; class B{ A a; } 2、原因 因为在B的头文件的需要用到A,但是又不想在B的头文件中include这个A.h【可能为了避免重复包含头文件】,只在B.cpp中include了A.h,就可以这样声明一个class A在这里,让代码 阅读全文
posted @ 2020-07-01 11:59 朱小勇 阅读(809) 评论(0) 推荐(0)
摘要:1、 #define PRINTF_LOCATION() qDebug()<<"ret in:" << __FILE__ << " at:"<<__LINE__ 2、 #define FILE_NAME __FILE__ #define LINE_COUNT __LINE__ qDebug()<<F 阅读全文
posted @ 2020-03-11 22:22 朱小勇 阅读(872) 评论(0) 推荐(0)
摘要:QVector <double> data {11.0, 44.0, 22.0, 33.0, 10.0,65.0};//表示最大值: auto max = std::max_element(std::begin(data), std::end(data)); //最小值表示: auto min = 阅读全文
posted @ 2020-02-25 17:10 朱小勇 阅读(3149) 评论(0) 推荐(0)

上一页 1 2 3 4 5 6 7 8 9 ··· 11 下一页