摘要:
有时候类需要它的一些成员与类本身直接相关,而不是与类的各个对象保持关联。 例如一个银行账户类可能需要一个数据成员来表示当前的利率。在此例中,我们希望利率与类关联,而非与类的每个对象关联。从实现效率上来看,没有必要每个对象都存储利率信息。而且更为关键的是,一旦利率浮动,我们希望所有的对象都能使用新值。 阅读全文
摘要:
C 语言中提供了 malloc 和 free 两个系统函数, 完成对堆内存的申请和释放。而 C++则提供了两个操作符 new 和 delete。 1、 newnew 分配内存空间时, 分配内存空间大小可能会(一般都是)大于所需空间大小。 因此, new 会分配至少申请大小的内存空间。A、 开辟单变量 阅读全文
该文被密码保护。 阅读全文
摘要:
1.const引用: 但是加上const之后是可以的,const int &a=100;就不会报错了。 2.函数占位参数: 如果给最后的占位参数加上默认值: 3.内联函数 内联只是对编译器发起一个申请,编译器可以拒绝用户的请求。内联函数只用在普通函数的开头加上inline关键字。 当编译器发现某段代 阅读全文
摘要:
来源:牛客网 下列哪两个是等同的 int b; 1.const int *a = &b; 2.const * int a = &b; 3.const int* const a = &b; 4.int const* const a = &b; 3,4是相同的。 int const *a 和 const 阅读全文
该文被密码保护。 阅读全文
摘要:
再有默认参数的函数中,一般我们都把默认参数放在声明处而不是定义处。 如果声明和定义都有默认参数,编译器将会报错。 调用含有默认实参的函数时,我们可以包含参数,也可以省略。 有默认参数的函数,我们可以不带参数调用: 所以,在类里面特别要注意,构造函数如果没有参数,此时又存在有所有参数都有默认参数的构造 阅读全文
摘要:
1.register关键字的加强 register修饰符暗示编译程序相应的变量将被频繁地使用,如果可能的话,应将其保存在CPU的寄存器中,以加快其存储速度,这只是一种请求,编译器可以拒绝这种申请。 (1)register变量必须是能被CPU所接受的类型。 这通常意味着register变量必须是一个单 阅读全文
摘要:
C++ 命名空间 C++ 应用程序中。例如,您可能会写一个名为 func() 的函数,在另一个可用的库中也存在一个相同的函数 func()。这样,编译器就无法判断您所使用的是哪一个 func() 函数。 因此,引入了命名空间这个概念,专门用于解决上面的问题,它可作为附加信息来区分不同库中相同名称的函 阅读全文
摘要:
函数递归调用,本质还是依托于栈,栈具有后进先出的特点,可以很好的实现回溯。 八皇后问题是典型的运用回溯思为解决问题的例子。 code: 一共92种解法。 首先为八皇后自设定了边界,所以二维数组的大小为 [N+2] [N+2].然后直角坐标系以左上方开始。 判断皇后是否可以放置,即为三个方向的判断: 阅读全文
摘要:
递归是数学上数学归纳法的模型。 不要陷入递归的具体细节。 截取知乎上一个很棒的解释: 作者:知乎用户链接:https://www.zhihu.com/question/24385418/answer/258015386来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 递 阅读全文
该文被密码保护。 阅读全文
该文被密码保护。 阅读全文