当前位置: 首页 > wzjs >正文

wordpress社交主题南宁市优化网站公司

wordpress社交主题,南宁市优化网站公司,决定网站打开的速度吗,广州番禺区号一:类型转换动态数组 c新增的有关于内存动态管理的运算符 new与malloc功能相似,用于在程序运行过程中根据需要申请连续内存空间 new 申请内存时知道类型的,而且也可以初始化 -------------------------------------------------------- new与delete ---…

一:类型转换+动态数组

c++新增的有关于内存动态管理的运算符
new与malloc功能相似,用于在程序运行过程中根据需要申请连续内存空间
new 申请内存时知道类型的,而且也可以初始化
--------------------------------------------------------
new与delete
--------------------------------
int *p = new int;
int *pa = new int[n];//n是个数
--------------------------------

delete释放内存空间
delete 指针名,释放当个变量的内存空间
delete[]指针名,释放数组的内存空间

========================================================
强制类型转换
-------------------------------
将表达式的值强制类型转换得到()中的类型值类型表达式

//static_cast<type>(expression)  基本类型之间转换(最常用)

//reinterpret_cast<type>(expression)
reinterpret_cast通常为操作数的位模式提供较底层的重新解释,重新解释指的是将二进制数据重新解释。expression只能是指针或引用

//const_cast<type>(expression)
const_cast<>用于移除const对象的引用或指针具有的常量性质,可以去除const对引用和指针的限定,const_cast<>只能用于转换指针或引用。

//dynamic_cast<type>(expression)
dynamic_cast<>用于运行时检查类型转换是否安全,可以在运行期间确定类型,如类的指针、类的引用和void*。
eg1:一动态数组初始化

#include <iostream>
using namespace std;int main() {int n;cout << "请输入数组长度 n:";cin >> n;// 第一种:new int[n] {1, 2, 3} —— 使用大括号初始化前几个,剩下为 0int* arr1 = new int[n]{1, 2, 3};// 第二种:new int[n]() —— 使用小括号初始化,所有元素为 0int* arr2 = new int[n]();// 第三种:new int[n] —— 没有括号,值为随机(未初始化)int* arr3 = new int[n];cout << "\narr1 (使用 {} 初始化): ";for (int i = 0; i < n; ++i) {cout << arr1[i] << " ";}
//这个方法是最安全的--也就是第2种cout << "\narr2 (使用 () 初始化): ";for (int i = 0; i < n; ++i) {cout << arr2[i] << " ";}cout << "\narr3 (未初始化): ";for (int i = 0; i < n; ++i) {cout << arr3[i] << " ";}// 释放内存delete[] arr1;delete[] arr2;delete[] arr3;return 0;
}

eg2:类型转换

#include<iostream>
using namespace std;int main()
{int intVal;float floatVal;//用户输入cout << "请输入一个整数";cin >> intVal;cout << "请输入一个浮点数...";cin >> floatVal;//强制类型转换float intToFloat = static_cast<float>(intVal);int FloatToint = static_cast<int>(floatVal);//求和float sumAsFloat = intToFloat + FloatToint;int sumAsInt = static_cast<int>(sumAsFloat);//输出结果cout << "\n将整数" << intVal << "转换为浮点数后为:" << intToFloat << endl;cout << "将浮点数" << floatVal << "转换为整数后为:" << FloatToint << endl;cout << "\n转换后两数之和(浮点数形式)为:" << sumAsFloat << endl;cout << "转换后两数之和(整数形式)为:" << sumAsInt << endl;return 0;
}

//reinterpret_cast

//reinterpret_cast 将整数的地址强制转换为char*,逐字节查看内存中的存储内容,这个方式便可以直观的
//观察出 整数是如何在内存中存储的#include<iostream>
using namespace std;int main()
{int num = 305419896;cout << "整数num的值为:" << num << endl;//使用reinterpret_cast把整数地址转换为字符指针char* ptr = reinterpret_cast<char*>(&num);cout << "该整数在内存中存储的字节为" << endl;for(int i = 0;i < sizeof(int);++i){printf("Byte %d:0x%02X\n",i,static_cast<unsigned char>(ptr[i]));}return 0;
}
#include<iostream>
using namespace std;int main()
{char ch;int num;//输入一个字符cout << "请输入一个字符" ;cin >> ch;//输入一个整数cout << "请输入一个整数(0-127)";cin >> num;//强制类型转换int asciiValue = static_cast<int>(ch);char convertedChar = static_cast<char>(num);//输出转换结果cout << "\n字符" << ch << "ascII" << asciiValue << endl;cout << "整数" << num << "对应的字符" << convertedChar << endl;return 0;}

-----------------------------
面向对象的基本概念
-----------------------------
面向过程程序设计:就是把问题分解为函数fuction功能、过程
面向对象是另外一种分解问题的角度,对象object
-----------------------------
对象就是现实生活中的各种物品,是一个对象具有不同的特征,这些特征在程序里面就是属性,同时具有行为就是方法

类:就是把所有同类的对象集合起来抽象出共同的特征和行为,进而形成类,这里的抽象就是把不同的对象属性值去掉,指保留属性
类与对象的实例就是抽象与实例的关系,类是对对象的抽象,对象是类的实例

-----------------------------
封装:就是隐藏不需要外界知道的信息,留出外界操作的接口。
-----------------------------
继承:继承主要是强调子类自动拥有父类的数据和方法
-----------------------------
多态:指同一个方法在不同的对象上有不同的表现虽然都是 “计算面积” 这个方法,但在不同的图形对象上表现不同,这就是多态
-----------------------------

成员函数

#include<iostream>
using namespace std;class Student
{
public:void study(); //成员函数声明void exam();string name;int age;
};void Student :: study()
{cout << name << "在学习" << endl;
}void Student :: exam()
{cout << name << "要考试" << endl;
}int main()
{Student stu;Student stu2;stu.name = "小米";stu2.name = "小红";stu.study();stu2.exam();return 0;
}

set与get使用方式

#include<iostream>
using namespace std;class Student
{
public:void study();void exam();void setName(string name){_name = name;}void setAge(int age){if(age < 0 || age > 150){cout << "年龄不合法" << endl;_age = 18;return;}_age = age;}string getName(){return _name;}int getAge(){return _age;}
private:
string _name;
int _age;
};void Student :: study()
{cout << _name << "在学习" << endl;
}
void Student :: exam()
{cout << _name << "在考试" << endl;
}
int main()
{Student stu;Student stu2;stu.setName("小明");stu2.setName("小红");stu.study();stu.exam();stu.setAge(30);cout << "姓名" << stu.getName() << ", 年龄" << stu.getAge() << endl;return 0;
}

封装的体现--教师系统

#include<iostream>
#include<string>
using namespace std;class Teacher{
public:
void inputInfo(){cout << "请输入教师姓名:";cin >> name;cout << "请输入教师年龄:";cin >> age;cout << "请输入教师职称";cin >> title;
}
//请输入个人信息
void displayInfo(){cout << "教师信息" << endl;cout << "姓名" << name << endl;cout << "年龄" << age << endl;cout << "职称" << title << endl;
}
//上课
void teach(){cout << name << " 在上课。" << endl;
}
//批改作业
void correctHomework(){cout << name << " 在批改作业" << endl;
}
private:string name;   // 姓名int age;       // 年龄string title;  // 职称
};
int main() {Teacher t;t.inputInfo();         // 键盘输入个人信息t.displayInfo();       // 显示器输出个人信息t.teach();             // 上课t.correctHomework();   // 批改作业return 0;
}

员工类操作

#include <iostream>
using namespace std;class Employee 
{
public:void setEmployeeId(int eid);void setName(string _name);void setSalary(double _salary);void increaseSalary(double rate);void displayDetails();
private:int employeeId;string name;double salary;
};void Employee::setEmployeeId(int eid)
{employeeId = eid;
}void Employee::setName(string _name)
{name = _name;
}void Employee::setSalary(double _salary)
{salary = _salary;
}void Employee::increaseSalary(double rate)
{salary *= 1 + rate;
}void Employee::displayDetails()
{cout << employeeId << ", " << name << ", " << salary << endl;
}int main()
{Employee e;e.setEmployeeId(101);e.setName("李四");e.setSalary(8000);e.increaseSalary(0.15);e.displayDetails();return 0;
}

http://www.dtcms.com/wzjs/44408.html

相关文章:

  • 电子商务网站建设和推广2345网址导航下载
  • 怎么把网站设置为主页面网页制作与设计
  • 公司网站建设手续百度广告费一般多少钱
  • 如何建设网站教程万网注册域名查询
  • 建设网站前准备资料营销推广网站
  • 做网站的时候卖过假货而出过事可以免费领取会员的软件
  • ps怎么做网站图片外贸营销渠道
  • 会员卡营销策划方案企业网站排名优化公司
  • 2015选择做导航网站免费推广网站2023mmm
  • 动力论坛源码网站后台地址是什么百度天眼查公司
  • 用wordpress做微网站查网站是否正规
  • 阜宁有做网站的吗互联网网站
  • 克隆网站怎么做后台网站搭建需要什么技术
  • wordpress 比特币 插件北京网站seo哪家公司好
  • 网站建设中html下载网络推广与推广
  • 地信网站建设用手机制作自己的网站
  • 网站开发费用计入什么科目品牌推广活动策划方案
  • 电商网站建设开发公司杭州seo教程
  • 广告点击网站源码seo精华网站
  • 梁山专业网站建设营销型网站建设实训总结
  • 张家港做网站湖南中高风险地区
  • 南村网站建设seo干什么
  • 如何做网站子页国内网络营销公司排名
  • 网页设计素材app广州做seo公司
  • 沧州免费网站建设苏州关键词排名系统
  • 石家庄模板建站行业解决方案天津网络关键词排名
  • 介绍在家里做的点心的网站中国企业网官方网站
  • 网站建设税务开票怎样注册个人网站
  • 建设的比较好的档案馆网站游戏广告推广平台
  • 怎么自己做网站推广新闻软文自助发布平台