摘要: 在构造自己的类时,有可能会碰到两个类之间的相互引用问题,例如:定义了类A类B,A中使用了B定义的类型,B中也使用了A定义的类型class A{ B b;}class B{ A* a;}请注意上面的定义内容,一般情况下是不能出现类A,类B相互引用都定义对象,即如下的样子:class A{ ... 阅读全文
posted @ 2015-07-16 19:23 指上弹兵赵小括 阅读(2265) 评论(0) 推荐(0) 编辑
摘要: Linux环境中支持输入输出重定向,用符号来表示。0、1和2分别表示标准输入、标准输出和标准错误信息输出,可以用来指定需要重定向的标准输入或输出,比如 2>lee.dat 表示将错误信息输出到文件lee.dat中。同时,还可以在这三个标准输入输出之间实现重定向,比如将错误信息重定向到标准输出,可以用... 阅读全文
posted @ 2015-07-16 19:22 指上弹兵赵小括 阅读(1593) 评论(0) 推荐(0) 编辑
摘要: 示例代码:#include#include#include#includeint main(int argc,char*argv[]){QCoreApplication a(argc, argv);QSqlDatabase db =QSqlDatabase::addDatabase("QODBC")... 阅读全文
posted @ 2015-07-16 19:21 指上弹兵赵小括 阅读(1351) 评论(0) 推荐(0) 编辑
摘要: int i;int*a =&i;//这里a是一个指针,它指向变量iint&b = i;//这里b是一个引用,它是变量i的引用,引用是什么?它的本质是什么?下面会具体讲述int*&c = a;//这里c是一个引用,它是指针a的引用int&*d;//这里d是一个指针,它指向引用,但引用不是实体,所以... 阅读全文
posted @ 2015-07-16 19:19 指上弹兵赵小括 阅读(234) 评论(0) 推荐(0) 编辑
摘要: #includeusingnamespace std;classClassTest{public:ClassTest(){ cout <<"ClassTest()"<<endl;}ClassTest(int i){ cout <<"ClassTest(int)"<<endl; value2 = i;... 阅读全文
posted @ 2015-07-16 19:18 指上弹兵赵小括 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 如果构造函数只接受一个实参,则它实际上定义了转换为此类类型的隐式转换机制。将这种构造函数称为转换构造函数。#ifndef MAIN_H_INCLUDED#define MAIN_H_INCLUDED#includeusingnamespace std;classClassTest{public:Cl... 阅读全文
posted @ 2015-07-16 19:17 指上弹兵赵小括 阅读(248) 评论(0) 推荐(0) 编辑
摘要: 当在类外部定义静态成员时,不能重复使用static关键字静态成员函数不包含this指针(无论是显示还是隐式使用)静态成员可以通过类对象进行访问,也可以通过类进行访问静态成员不是由构造函数初始化的,一般来说不能在类的内部初始化静态成员静态数据成员定义在任何函数之外,且只能被定义一次在定义静态数据成员时... 阅读全文
posted @ 2015-07-16 19:15 指上弹兵赵小括 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 基本特性const对象一旦创建后其值就不能被修改,故而const对象必须进行初始化可以用一个非const对象初始化一个const对象,也可以用一个const对象赋值给一个非const对象默认状态下,const对象仅在文件内有效当多个文件内出现了同名的const变量时,等同于在不同文件中定义了独立的变... 阅读全文
posted @ 2015-07-16 19:14 指上弹兵赵小括 阅读(273) 评论(0) 推荐(0) 编辑
摘要: #includeusingnamespace std;class BASE{public: BASE()=default; BASE(int publicValue,int protectedVale,int privateValue){this->publicValue = publicValue... 阅读全文
posted @ 2015-07-16 19:13 指上弹兵赵小括 阅读(2282) 评论(0) 推荐(0) 编辑
摘要: #includeusingnamespace std;class MYCLASS{public: MYCLASS()=default;/*explicit*/ MYCLASS(string str): strValue(str){ cout intValue = myClass.intValue;t... 阅读全文
posted @ 2015-07-16 19:12 指上弹兵赵小括 阅读(403) 评论(0) 推荐(0) 编辑
摘要: C++的static有两种用法:面向过程程序设计中的static和面向对象程序设计中的static。前者应用于普通变量和函数,不涉及类;后者主要说明static在类中的作用。1.面向过程设计中的static1.1静态全局变量全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全... 阅读全文
posted @ 2015-07-16 19:11 指上弹兵赵小括 阅读(235) 评论(0) 推荐(0) 编辑
摘要: #include#includeusingnamespace std;/**::iterator uniqueElements(vector::iterator begPos,vector::iterator endPos){auto currPos = begPos +1;while(currPo... 阅读全文
posted @ 2015-07-16 19:10 指上弹兵赵小括 阅读(336) 评论(0) 推荐(0) 编辑
摘要: #include#include#include#includeusingnamespace std;templatevoidPrintElements(T c){typename T::const_iterator itr = c.begin();//在GCC下typename不能省略while(... 阅读全文
posted @ 2015-07-16 19:08 指上弹兵赵小括 阅读(575) 评论(0) 推荐(0) 编辑
摘要: 来自为知笔记(Wiz) 阅读全文
posted @ 2015-07-16 19:07 指上弹兵赵小括 阅读(195) 评论(0) 推荐(0) 编辑
摘要: auto自动类型推断,用于从初始表达式中推断出变量的类型。auto a;// 错误,没有初始化表达式,无法推断出a的类型autoint a =10;// 错误,auto临时变量的语义在C++ 11中已不存在auto a =10;auto c ='A';auto s("hello");vector v... 阅读全文
posted @ 2015-07-16 19:05 指上弹兵赵小括 阅读(796) 评论(0) 推荐(0) 编辑
摘要: #includeusingnamespace std;classSmallInt{public:/** * implicit constructor * 实现int类型转换为SamllInt类型 */SmallInt(constint val): value(val){ cout <<"SmallI... 阅读全文
posted @ 2015-07-16 19:04 指上弹兵赵小括 阅读(228) 评论(0) 推荐(0) 编辑
摘要: #includeusingnamespace std;classBase1{public:Base1()=default;Base1(const string & str){ strValue = str;} string strValue;};classBase2{public:Base2()=d... 阅读全文
posted @ 2015-07-16 19:03 指上弹兵赵小括 阅读(967) 评论(0) 推荐(0) 编辑
摘要: 继承关系中,父类无默认构造函数类类型类成员变量无默认构造函数const类型成员变量引用类型成员变量不使用初始化列表,在创建对象调用构造函数之前会对所有的成员变量进行默认初始化,然后再执行构造函数体里的内容,这样做的话对于没有默认构造函数和变量在声明时便需要被赋值的类型是不适用的。初始化列表属于函数声... 阅读全文
posted @ 2015-07-16 19:01 指上弹兵赵小括 阅读(235) 评论(0) 推荐(0) 编辑
摘要: CC++的typeid注意:typeid是操作符,不是函数!)运行时获知变量类型名称,可以使用 typeid(变量).name(),需要注意不是所有编译器都输出"int"、"float"等之类的名称,对于这类的编译器可以这样使用:float f = 1.1f; if( typeid(f) == ty... 阅读全文
posted @ 2015-07-16 19:00 指上弹兵赵小括 阅读(218) 评论(0) 推荐(0) 编辑
摘要: #includeusingnamespace std;templatestructFactorial{enum{value = n *Factorial::value};};templatestructFactorial{enum{value =1};};int main(){ cout ::val... 阅读全文
posted @ 2015-07-16 18:59 指上弹兵赵小括 阅读(203) 评论(0) 推荐(0) 编辑