上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 23 下一页
摘要: 比如数组的比较,就没法通过简单的比对函数进行 这种情况下要进行函数模板的重载,或者进行运算符重载 template<> bool compare (person &a,person &b) 阅读全文
posted @ 2022-05-04 15:53 纸包鱼 阅读(37) 评论(0) 推荐(0)
摘要: 1. 如果函数模板和普通函数都可以实现,优先调用普通函数2. 可以通过空模板参数列表来强制调用函数模板 myPrint<>(a, b)3. 函数模板也可以发生重载4. 如果函数模板可以产生更好的匹配,优先调用函数模板 阅读全文
posted @ 2022-05-04 15:38 纸包鱼 阅读(96) 评论(0) 推荐(0)
摘要: 主要区别在于隐式类型转换 普通函数调用时可以发生自动类型转换(隐式类型转换)函数模板调用时,如果利用自动类型推导,不会发生隐式类型转换如果利用显示指定类型的方式,可以发生隐式类型转换 阅读全文
posted @ 2022-05-04 15:28 纸包鱼 阅读(28) 评论(0) 推荐(0)
摘要: 自动类型推导,必须推导出一致的数据类型T,才可以使用,T不会在一个模板函数调用中代表两个意义模板必须要确定出T的数据类型,才可以使用,也就是说函数模板必须说明或者自动分析出typename模板变量 因为模板不能直接调用 typename可以改成class,两者区别不大,在模板定义的时候可以混用 te 阅读全文
posted @ 2022-05-04 15:04 纸包鱼 阅读(38) 评论(0) 推荐(0)
摘要: c++模板是通用的模具,用于提高复用性 模板不可以直接使用 这是一种思想,叫做泛式编程,有两种模板,函数模板和类模板 函数模板用于建立一个通用函数,函数返回值和形参类型不具体指定,用一个虚拟类型来表示 函数模板声明template<typename T> template 声明创建模板typenam 阅读全文
posted @ 2022-05-04 14:58 纸包鱼 阅读(76) 评论(0) 推荐(0)
摘要: 使用new的意义是申请堆空间(heap)中的内存。heap比起栈空间(stack)的优势在于容量巨大,通常一个程序的stack空间的大小都只有2m左右,具体数值取决于编译器。使用heap需要手动释放内存,但是随时可以释放,使用stack必须等到生命周期结束才会释放内存。对于生命周期短且占用空间小的变 阅读全文
posted @ 2022-04-11 17:28 纸包鱼 阅读(183) 评论(0) 推荐(0)
摘要: char ch; ifs >> ch ifs.eof() 用来判断文件是否为空,如果为1,那就是空的,思路就是先只读一个字符,然后判断这个字符是不是EOF,如果为空那就是空文件 阅读全文
posted @ 2022-04-11 17:24 纸包鱼 阅读(883) 评论(0) 推荐(0)
摘要: worker** = new worker*【5】 意思是保存指针的数组的首地址,用这个**来维护保存指针的数组 如果数组超了,那就开辟一的新的堆区,注意开辟新堆区的时候要销毁旧的堆区,删除旧的堆区的时候,堆区变量的类型不变,只是指向的地址并不是堆区了。 注意堆区一定要用后删除,而且这种时候要先把堆 阅读全文
posted @ 2022-04-11 16:54 纸包鱼 阅读(249) 评论(0) 推荐(0)
摘要: exit()函数本身表示退出程序。 其中: exit(0):表示正常退出 exit(1):表示出错(或非正常)退出。当然,exit()的参数可以不只是1,也可以是其他整型数,如2,3等,作为标识 阅读全文
posted @ 2022-04-11 16:31 纸包鱼 阅读(1147) 评论(0) 推荐(0)
摘要: #pragma onc写在头文件开始,用于防止重复加载头文件 阅读全文
posted @ 2022-04-11 16:30 纸包鱼 阅读(32) 评论(0) 推荐(0)
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 23 下一页