美文网首页
c++学习记录1(GeekBand)

c++学习记录1(GeekBand)

作者: shenhua8369 | 来源:发表于2016-05-15 00:42 被阅读0次

最近报了一门c++课程。这是一些记录。

1.写一个c++的类,我们首先需要一个防卫式常数定义,如下:

#ifndef __MYCOMPLEX__

#define __MYCOMPLEX__

内容放在这里。。。

#endif  //__MYCOMPLEX__

2.在内容里面加上类的内容。而类的内容又有public和private和protected三种(目前学习两种)。

public公有的,可以被类外面访问的。

private私有的。只有类里面可以使用。

protected保护的。可以被继承,也不能被外面访问。

ps:public和private可以穿插使用,可以出现多次。

3.构造函数使用初始化。如下:

complex (double r = 0, double i = 0): re (r), im (i) { }

4.友元函数,定义当前类的私有成员可以被这个函数访问。如:

friend complex& __doapl (complex *, const complex&);

5.尽可能使用内联函数,并且函数参数使用引用,返回值使用引用,这样能够提高效率。

区分返回引用和返回值:如果要返回的是一个函数里创建的临时对象,返回值。否则,尽量使用返回引用。

6.操作符重载:operator +=();operator +();等等。

7.函数重载,允许不参数的函数有相同的名字:

这样可以用同样的函数,传递不同的参数,来实现一些功能。

voidtest(intarg){}//函数1

voidtest(chararg){}//函数2

voidtest(intarg1,intarg2){}//函数3

ps:在编译器变异后,这些函数名字其实是不同的。另外如果函数名相同,参数也相同,则会报错,因为两个函数真的一样了。

结束:目前就这些,后面继续学习。

相关文章

  • c++学习记录1(GeekBand)

    最近报了一门c++课程。这是一些记录。 1.写一个c++的类,我们首先需要一个防卫式常数定义,如下: #ifnde...

  • monolake 的GeekBand C++开发学习笔记(一)

    前记:开始第一课GeekBand C++开发工程师课程的学习,同时也开始写自己的第一篇C++笔记博客,记录下自己的...

  • c++学习记录7(GeekBand)

    这周的课程将容器讲完了。自己来总结下容器的东西。 参考:STL源码分析 (一)vector容器 vector的数据...

  • c++学习记录5(GeekBand)

    说说new的六种重载形式: 全局的new有六种重载形式, void *operator new(std::size...

  • c++学习记录6(GeekBand)

    这周作业是和vector有关的,就找了找vector相关的内容。如下: vector是C++标准模板库中的部分内容...

  • c++学习记录8(GeekBand)

    这周的课讲了将泛型算法。现在将泛型算法收集下,备用。 (1)泛型算法用迭代器来解决第一个要求:遍历容器。所有迭代器...

  • c++学习记录9(GeekBand)

    聊聊观察者模式 先前用过一些语言,比如js,as之类。这些语言里面很常见的就是事件。一个对象发生变化,可以通过事件...

  • c++学习记录10(GeekBand)

    这周课程继续设计模式。这里选出来最常用的工厂模式来说说。 先来说说,工厂模式使用的场景: 1.当你遇到需要创建的对...

  • c++学习记录12(GeekBand)

    这周的课听得有些迷糊,现在记录下,以备后面查看。 七剑客: 1.同步 2.网络 http1.0和http1.1的区...

  • c++学习记录11(GeekBand)

    Composite组合模式 作用: 将对象组合成树形结构以表示“部分-整体”的层次结构。Composite使得用户...

网友评论

      本文标题:c++学习记录1(GeekBand)

      本文链接:https://www.haomeiwen.com/subject/yolvrttx.html