在介绍C++浅拷贝与深拷贝之前,我们先引出C++的拷贝构造函数。 C++拷贝构造函数是一种特殊的构造函数,其形参是本类对象的引用。用于在建立一个新的对象时,使用一个已经存在的对象来初始化这个新对象。因为拷贝构造函数时特殊的构造函数,所以其没有返回值类型,且名称与类名相同;该函数只有一个参数,即此类对 Read More
要想使用标准C++中string类,必须要包含 #include <string>// 注意是<string>,不是<string.h>,带.h的是C语言中的头文件 using std::string; using std::wstring; 或 using namespace std; 下面你就可 Read More
给定一个数组a[n],求数组a[n]的和sum。一般的方法是遍历数组然后求和,这样的时间复杂度为O(n)。而当修改了数组中的元素,再次求数组的和时,又要付出O(n)的时间代价。此时,我们可以用树状数组来求和数组的和。得到树状数组C[n]后,时间复杂度将由O(n)变为O(lgn)。这是如何实现的呢?下 Read More
通过while(Scanf()!=EOF)可实现在未知循环输入次数的情况下通过scanf()函数返回值或Ctrl+Z结束循环。 在C语言中,scanf()函数是有返回值的,其返回值与参数个数有关。假设scanf()函数有n个参数,返回值为其正确输入的参数个数:即若n个参数全部正常输入,则返回值为n。 Read More