随笔分类 -  【C++ Primer】

【C++ Primer】第十五章 友元、异常和其他 --之一--->友元和嵌套类
摘要:一,友元 1)可以将类作为友元,友元类的所有方法都可以访问原始类的私有成员和保护成员。 2)下面例子介绍了 电视类和遥控器类,其中遥控器类为电视类的友元类 3)注意:友元关系不具对称性。即 A 是 B 的友元,但 B 不一定是 A 的友元。 友元关系不具传递性。即 B 是 A 的友元,C 是 B 的友元,但是 C 不一定是 A 的友元。#include <iostream> using namespace std; class TV { private: int state;// on or off int volume; //assumed to be digitized ... 阅读全文

posted @ 2012-03-27 19:57 小田的专栏 阅读(262) 评论(0) 推荐(0)

【C++ Primer】第十四章 C++中的代码重用
摘要:序:C++的一个主要目标是促进代码重用,其中包含公有继承、包含、使用私有或保护继承一,包含对象成员的类 1)valarray类简介 #include <valarray> 作用:处理数值,支持数值中所有元素的值相加,找最大值,最小值 用法:vallarray <int> a; //数组 a size=0 vallarray <double> b(10); //数组 b size=10 vallarray <double> c(10,8); //数组 c size=8 每个元素设置为 10 i... 阅读全文

posted @ 2012-03-26 20:57 小田的专栏 阅读(1252) 评论(0) 推荐(0)

【C++ Primer】第十三章 类继承
摘要:一,类继承 定义:从已有的类派生出新的类,而派生类继承了原有类的特征,包括方法。 目标:提供可重用的代码二,一个简单的基类#include <iostream> #include <cstring> using namespace std; class student //基类 { private: char name[20]; int num; int age; public: student(const char *m_name,const int m_num,const int m_age); ~student(); virtual void display(); 阅读全文

posted @ 2012-03-20 12:58 小田的专栏 阅读(202) 评论(0) 推荐(0)

【c++ primer】第八章 函数探幽
摘要:一,C++内联函数 定义: inline double square (double x){return x*x;}//含有关键字inline的内联函数 描述:内联函数类似于宏的定义与调用 使用:调用内联函数时候,不用跳到另一个位置执行代码,而是将调用内联函数代码用相应内联函数替换。 区别:普通函数调用时候,跳到函数处执行完,返回再执行下一条语句。 内联函数调用时候,直接将代码复制过来执行,省去了跳过去然后返回的过程 宏:只是简单的形式上的替换 例:#define square(x) x*x ... 阅读全文

posted @ 2012-02-29 20:15 小田的专栏 阅读(193) 评论(0) 推荐(0)

【C++ primer】第七章 函数-C++的编程模块
摘要:1,函数的基本知识 C++对于返回值的类型有一定的限制:不能是数组,但可以使其他任何类型,甚至可以使结构和对象。 有趣的是,虽然数组不可以作为返回对象,但是数组可以作为结构或对象组成部分来返回。2,函数参数和按值传递 cin.get();//读取所有输入的字符,包括空格和换行符。 cin>> ;//跳过空格和换行符读取。3,函数和数组 int arr[32]; int sum_arr(int arr[],int n);//参数arr是一个指针,而不是一个数组。 int sum_arr(int *arr,int n); //仅用于函数头,函数原型中 int *arr ... 阅读全文

posted @ 2012-02-22 00:12 小田的专栏 阅读(172) 评论(0) 推荐(0)

【C++ Primer】第六章(分支语句和逻辑操作符)
摘要:1,cin的用法char ch;cin.get(ch); //仅仅接受一个字符(输入12,则ch仅仅赋值为1)cout<<ch;2,对于字符型变量ch,++ch与ch+1的区别int main() { char ch; cin.get(ch); while(ch!='.') { if(ch=='\n') cout<<ch; else cout<<ch+1; cin.get(ch); } }cout<<++ch;输出的是 相应ASCCI码加一之后的 字符cout<<ch+1;输出的是 相应ASCCI码加一 阅读全文

posted @ 2012-02-21 00:23 小田的专栏 阅读(350) 评论(0) 推荐(0)

【C++ Primer】第五章学习笔记(循环和关系表达式)
摘要:一,for循环 1,在C++中每一个表达式都有值; int a=0//声明表达式 23+17 //数学表达式 a=(b=3)+4//a的值为7 2,表达式跟语句的区别 表达式加上";"就是语句 a=10为表达式 a=10;为语句 3,前缀式和后缀式 ++i;比i++速度更快,效率更高; 【注意】前缀递增(++)、前缀递减(++)、解除引用(*)优先级相同; 并且从右向左的规则进行结合 例:*++pt; //先将++作用于pt,然后将*... 阅读全文

posted @ 2012-02-14 00:08 小田的专栏 阅读(165) 评论(0) 推荐(0)

【c++ Primer 】 4.10复习题 12题(int)、(int&)和(int*)
摘要:(1)首先通过一个例子看(int)和(int&)的区别:float a = 1.0f;cout << (int)a << endl;cout << (int&)a << endl;cout << boolalpha << ( (int)a == (int&)a ) << endl; // boolalpha 用符号形式表示真假float b = 0.0f;cout << (int)b << endl;cout << (int&)b <&l 阅读全文

posted @ 2012-01-07 22:26 小田的专栏 阅读(195) 评论(0) 推荐(0)

导航