摘要:一,友元 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 ...
阅读全文
摘要:序: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...
阅读全文
摘要:一,类继承 定义:从已有的类派生出新的类,而派生类继承了原有类的特征,包括方法。 目标:提供可重用的代码二,一个简单的基类#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();
阅读全文
摘要:一,C++内联函数 定义: inline double square (double x){return x*x;}//含有关键字inline的内联函数 描述:内联函数类似于宏的定义与调用 使用:调用内联函数时候,不用跳到另一个位置执行代码,而是将调用内联函数代码用相应内联函数替换。 区别:普通函数调用时候,跳到函数处执行完,返回再执行下一条语句。 内联函数调用时候,直接将代码复制过来执行,省去了跳过去然后返回的过程 宏:只是简单的形式上的替换 例:#define square(x) x*x ...
阅读全文
摘要: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 ...
阅读全文
摘要: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码加一
阅读全文
摘要:一,for循环 1,在C++中每一个表达式都有值; int a=0//声明表达式 23+17 //数学表达式 a=(b=3)+4//a的值为7 2,表达式跟语句的区别 表达式加上";"就是语句 a=10为表达式 a=10;为语句 3,前缀式和后缀式 ++i;比i++速度更快,效率更高; 【注意】前缀递增(++)、前缀递减(++)、解除引用(*)优先级相同; 并且从右向左的规则进行结合 例:*++pt; //先将++作用于pt,然后将*...
阅读全文
摘要:(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
阅读全文