随笔分类 -  c++

摘要:是不是stl中的算法函数中参数只要是和函数相关的就是函数对象和谓词? 阅读全文
posted @ 2017-06-01 21:57 小陈同学啦 阅读(180) 评论(0) 推荐(0)
摘要:#include using namespace std; #include"set" #include"algorithm" struct compareNoCase { //bool operator()(const string &str1, const string &str2) 这种居然是错误的。不知道为什么 bool operator()(const string &st... 阅读全文
posted @ 2017-06-01 20:35 小陈同学啦 阅读(232) 评论(0) 推荐(0)
摘要:#include using namespace std; class MyArray { public: MyArray(int m_len); ~MyArray(); public: class eSize { public: eSize(int len) { m_len11 = len; } virtual void printErr() { ;... 阅读全文
posted @ 2017-05-07 21:13 小陈同学啦 阅读(194) 评论(0) 推荐(0)
摘要:指针指向对象,在指针没有分配内存空间的前提,指针指向的对象构造了,再析构了,则这个指针就会变成野指针。 指针指向对象,指针分配了内存,在指针指针指向的对象构造了,再析构了,如果不delete 会造成内存泄漏。 阅读全文
posted @ 2017-05-07 13:20 小陈同学啦 阅读(253) 评论(0) 推荐(0)
摘要:这里的throw 3 为什么会引发异常? 阅读全文
posted @ 2017-05-07 11:21 小陈同学啦 阅读(210) 评论(0) 推荐(0)
摘要:数组的指针,在运用的时候,忘了开辟内存空间。 运算符的重载有没有引用的问题 拷贝函数有没有引用问题 模版类在测试函数中的头文件,.cpp问题 友元函数的模版类问题 数组的输出问题 阅读全文
posted @ 2017-05-04 22:14 小陈同学啦 阅读(182) 评论(0) 推荐(0)
摘要:要包含.cpp这点异于常类 易错误 阅读全文
posted @ 2017-05-03 22:07 小陈同学啦 阅读(519) 评论(0) 推荐(0)
摘要://友元函数:友元函数不是实现函数重载(非 << >>)(特别麻烦,所以除了<< >>都不用) //1)需要在类前增加 类的前置声明 函数的前置声明 template<typename T> class Complex; template<typename T> Complex<T> mySub(C 阅读全文
posted @ 2017-05-03 22:04 小陈同学啦 阅读(309) 评论(0) 推荐(0)
摘要:这里很容易搞混; tyepdef double dou;//这里是dou是double的别名 #include<iostream> using namespace std; int main() { typedef char *pstring; //pstring实际上是指向char的指针。 con 阅读全文
posted @ 2017-04-23 16:03 小陈同学啦 阅读(389) 评论(0) 推荐(0)
摘要:不过仍旧有疑问: 就是i和j为什么必须定义到函数体外部,并且定义在内部显示 阅读全文
posted @ 2017-04-23 13:29 小陈同学啦 阅读(2826) 评论(0) 推荐(0)
摘要:#include using namespace std; class Father { public: Father() { cout f f c f==========>"; cout f c==========>"; cout c f==========>"; cout f "; c1.print();//调用子类的 输出为6 f1.f = 7; cout "; f1.print();... 阅读全文
posted @ 2017-04-14 16:57 小陈同学啦 阅读(219) 评论(0) 推荐(0)
摘要:结果显示: error C2065: “tem”: 未声明的标识符 阅读全文
posted @ 2017-04-13 21:49 小陈同学啦 阅读(501) 评论(0) 推荐(0)
摘要:模版类是抽象的,必须进行具体类型,而函数模版则不一定 函数模版不允许自动类型转换,必须严格按照类型匹配 这里的意思是如果模版类要求两个参数的类型一致,则调用函数必须符合这个要求。 普通函数则可以进行自动类型的转化。 阅读全文
posted @ 2017-04-13 20:23 小陈同学啦 阅读(259) 评论(0) 推荐(0)
摘要:#include using namespace std; // 定义仅由HasPtr类使用的U_Ptr类,用于封装使用计数和相关指针 // 这个类的所有成员都是private,我们不希望普通用户使用U_Ptr类,所以它没有任何public成员 // 将HasPtr类设置为友元,使其成员可以访问U_Ptr的成员 class U_Ptr { friend class HasPt... 阅读全文
posted @ 2017-04-13 17:16 小陈同学啦 阅读(236) 评论(0) 推荐(0)
摘要:如果你的成员是POD类型的,那么list initialization和constructor initialization没有任何区别 但是成员变量的类型是非POD类型,比如自定义类型,那么list inlitialization的代码就会变成 但是这里仍旧不知道列表初始化和结构体初始化的区别以及 阅读全文
posted @ 2017-04-13 16:01 小陈同学啦 阅读(258) 评论(0) 推荐(0)
摘要:初始化(Initialization) 初始化是指变量在创建的同时获得的初始值。虽然C++经常用=来初始化一个变量,但是赋值和初始化是两种不同的操作。赋值是变量定义后的操作,效果是改变变量的值,或者说是用新值来替换旧值;而初始化是在变量创建期获得一个值。两者具有本质的区别。下面分别介绍一下C++常见 阅读全文
posted @ 2017-04-13 15:19 小陈同学啦 阅读(593) 评论(0) 推荐(0)
摘要:#include using namespace std; template void sortArray(A *array, A2 size) { A2 temp; for (A2 i = 0; i //这里必须单独另加说明,否则导致错误 void Myprint(A *array, A2 size) { for (A2 i = 0; i (Myarray, size); Mypr... 阅读全文
posted @ 2017-04-13 11:21 小陈同学啦 阅读(215) 评论(0) 推荐(0)
摘要:非静态局部变量不能当左值的,这样即便运算出结果不报错误也是不合理的,因为这里的局部变量已经调用就会释放。 阅读全文
posted @ 2017-04-09 22:23 小陈同学啦 阅读(1411) 评论(0) 推荐(0)
摘要:在c++的类中虚析构函数一直不知道它有什么作用,等到今天来看才发现加virtual 和不加的区别特别大。 结果显示为: 在加上virtual后就变成了这样: 由此观之virtual的作用很大,析构函数加上virtual后,会析构子类和父类,不会单一的只析构父类造成内存的泄漏。 阅读全文
posted @ 2017-04-07 20:56 小陈同学啦 阅读(231) 评论(0) 推荐(0)
摘要:父类指针和子类指针的步长 1) 铁律1:指针也只一种数据类型,C++类对象的指针p++/--,仍然可用。 2) 指针运算是按照指针所指的类型进行的。 p++《=》p=p+1 //p = (unsigned int)basep + sizeof(*p) 步长。 3) 结论:父类p++与子类p++步长不 阅读全文
posted @ 2017-04-07 15:56 小陈同学啦 阅读(203) 评论(0) 推荐(0)