上一页 1 ··· 5 6 7 8 9 10 11 12 13 下一页
摘要: 差不多最经典的就是这个了:x = y = z = 15;解读为:x = (y = ( z = 15));如果没有返回值,上述代码就不能通过编译。其实看到标题就差不多明白这一条了,但是为什么连续赋值时最好让其返回一个reference to *this呢?我们来举一个例子:如果我们定义一个类R:R r... 阅读全文
posted @ 2014-11-12 15:40 依然冷月 阅读(300) 评论(0) 推荐(1)
摘要: 在确保对象在使用前已先被初始化这一条款的编码实践中,作者为我们总结了三条经验,它们分别是: ------------------------------------------------------------------------------------------------------... 阅读全文
posted @ 2014-11-12 13:50 依然冷月 阅读(173) 评论(0) 推荐(0)
摘要: 这章非常容易理解:因为C++并不禁止析构函数吐出异常,只是不鼓励这样做而已。一、原因假设我们有10个装着鸡蛋的容器,而且现在我们还想着把它在析构函数打烂。class Egg {public : ... ~Egg() { // 这里可能出错,导致蛋打不烂 }}... 阅读全文
posted @ 2014-11-11 18:09 依然冷月 阅读(320) 评论(0) 推荐(0)
摘要: 引言: 我们都知道类的一个很明显的特性是多态,比如我们声明一个水果的基类:class Fruit {public: Fruit() {}; ~Fruit(){};} 那么我们根据这个Fruit基类可以派生出以下的子类: class Apple:public Fruit{}; c... 阅读全文
posted @ 2014-11-10 18:20 依然冷月 阅读(230) 评论(0) 推荐(0)
摘要: ■本文内容■□第一节 在条款五的讲解中,我们已经知道编译器是聪明的家伙,它会帮助你生成类的构造函数、析构函数、一个copy构造函数和一个赋值运算符。有时真的要感谢编译器所做的这一切,因为我们确实需要如此。但有的时候这一切又会给我们带来麻烦,本条款的介绍主题是麻烦的产生及如何解决。□第二节 ... 阅读全文
posted @ 2014-11-10 17:06 依然冷月 阅读(215) 评论(0) 推荐(0)
摘要: 编译器是个十分敬业的工作者,不但为你编译代码,甚至为你生成代码,不可思议吧。本文主要介绍编译器究竟会为我们生成和调用哪些代码。如果问什么样的类是空类?也许你会说下面的类就是空类。class A{};好吧,我也是这么认为的。没有构造函数怎么创建对象?事实上编译器会自动地把A的定义转为下面这样的代码。c... 阅读全文
posted @ 2014-11-10 17:04 依然冷月 阅读(217) 评论(0) 推荐(0)
摘要: 在C语言中就学过scanf和printf,其实理解socket就跟这两个输入输出差不多,只不过是信息的传输而已。1.TCP服务器端(server)的默认函数调用顺序:按照上述的调用顺序,我们可以来写个最简单的"hello world" server程序。 1 #include 2 #include ... 阅读全文
posted @ 2014-10-31 14:05 依然冷月 阅读(10337) 评论(0) 推荐(1)
摘要: 对于函数模板,编译器利用调用中的函数实参来确定其函数模板,从函数实参来确定模板实参的过程就被叫做是模板实参推导。比如: 1 #include 2 #include 3 using namespace std; 4 5 template 6 int compare(const T &v1, con... 阅读全文
posted @ 2014-10-21 17:54 依然冷月 阅读(410) 评论(0) 推荐(0)
摘要: 在模板中,除了定义类型参数,我们还可以定义非类型参数。例如:temlateint foo(const char (&p1)[N], const char (&p2)[M]) { return strcmp(p1,p2);}但是需要注意的是:编译器会在一个字符串字面常量的末尾插入一个空字符作为终... 阅读全文
posted @ 2014-10-20 16:01 依然冷月 阅读(131) 评论(0) 推荐(0)
摘要: lambda表达式的捕获跟参数差不多,可以是值或者引用。1.值捕获 与传值参数类似,采用值捕获的前期是变量可以拷贝;与参数不通透的是:被捕获的变量的值是在lambda创建时拷贝,而不是调用时拷贝。void func(){ int v1 = 1; auto f = [v1] { ret... 阅读全文
posted @ 2014-10-16 16:36 依然冷月 阅读(2880) 评论(0) 推荐(0)
上一页 1 ··· 5 6 7 8 9 10 11 12 13 下一页