C++面向对象实践
实践如下:
class Person{ private:
int age;
char name[];
int hight; public:
Person(int age, int hight, char* name);
int getAge();
char* getName();
int getHight(){
return hight;
}
};
#include "Person.h" Person::Person(int age, int hight, char* name1){
Person::age = age;
Person::hight = hight;
Person::name = name1;
} int Person::getAge(){
return age;
} char* Person::getName(){
return name;
}
#include <iostream> #include "Person.h" using namespace std; int main(){ cout << "面向对象实践:" << endl; cout << "end." << endl; return ;
}
第二版:
class Person{ private:
int age;
char name[];
int hight; public:
// 静态常量不允许修改
const static int SVar = ;
const static int Default_Age = ;
const static int Default_Hight = ; // static 作为默认参数
Person(int age = Default_Age, int hight = Default_Hight){
this->age = age;
this->hight = hight;
}
Person(Person &p);
Person(Person *p);
~Person();
Person(int age, int hight, char name[]);
int getAge();
char* getName();
int getHight(){
return this->hight;//(*this).hight;
}
};
#include <iostream>
#include <string.h> #include "Person.h" Person::Person(int age, int hight, char name[]){
Person::age = age;
Person::hight = hight;
strcpy(Person::name, name);
}
Person::Person(Person &p){
age = p.age;
hight = p.hight;
}
Person::Person(Person *p){
age = p->age;
hight = p->hight;
}
Person::~Person(){
//delete[] name;
std::cout<<"...~\n";
}
int Person::getAge(){
return age;
} char* Person::getName(){
return name;
}
#include <iostream> #include "Person.h" using namespace std; int main(){ cout << "面向对象实践1:" << endl; Person p(,); cout << "age:" << p.getAge()<< endl;
cout << "hight:" << p.getHight() << endl; char name[] = "1212121212q";
Person pp(,,name);
Person *p1 = &pp; cout << "age1:" << p1->getAge()<< endl;
cout << "hight1:" << p1->getHight() << endl;
cout << "name1:" << p1->getName() << endl; Person p2(p);
cout << "age2:" << p2.getAge()<< endl;
cout << "hight2:" << p2.getHight() << endl; Person p3(p1);
cout << "age3:" << p3.getAge()<< endl;
cout << "hight3:" << p3.getHight() << endl; // Person p4(NULL,NULL);
// cout << "age4:" << p4.getAge()<< endl;
// cout << "hight4:" << p4.getHight() << endl; cout << "Person::SVar:" << Person::SVar << endl; cout << "end1." << endl; return ;
}
C++面向对象实践的更多相关文章
- Golang的面向对象实践method
最近在系统的学习go的语法,一切都弄好了之后准备弄个im项目出来玩.在这个过程中会把看到有趣的写法和语法啥的拿出来分析一下. 我一直以为go语言对面向对象没有支持,但是后面看到了类似类的概念,meth ...
- MySQLi面向对象实践--multi_query
使用multi_query可以实现执行多条SQL语句,每一条SQL语句通过分号分隔. 需要注意的是: 多条用分号分隔的SQL语句中,只要有一条SQL语句执行失败,那么这一条SQL语句以及之后的SQL语 ...
- MySQLi面向对象实践--select
对于update.insert.delete请参考http://www.cnblogs.com/-beyond/p/8457580.html 执行select,如果SQL语句执行成功,那么返回的是一个 ...
- MySQLi面向对象实践--insert、update、delete
执行insert <?php $mysqli = new Mysqli(); $mysqli->connect("localhost","root" ...
- Javascript 面向对象实践
踩到了坑,才能学到东西. 记录我在慢慢的转向模块化遇到的问题以及解决的思路. 1.采用立即执行函数,闭包的方式创建模块 html: <!DOCTYPE html> <html lan ...
- 改善C#程序的50种方法
为什么程序已经可以正常工作了,我们还要改变它们呢?答案就是我们可以让它们变得更好.我们常常会改变所使用的工具或者语言,因为新的工具或者语言更富生产力.如果固守旧有的习惯,我们将得不到期望的结果.对于C ...
- .Net中关于等于的故事(一)
在.Net框架中,如果您查看所有类型的的基类:System.Object类,将找到如下4个与相等判断的方法: static Equals() virtual Equals() static Refer ...
- .Net中关于相等的问题
在.Net框架中,如果您查看所有类型的的基类:System.Object类,将找到如下4个与相等判断的方法: static Equals() virtual Equals() static Refer ...
- 学校的统一订书80%该烧掉——IT推荐书单
学校的统一订书80%该烧掉——IT推荐书单 作者: 夏浅音.py 中文图书个人黑名单:清华大学出版社的国产作者,例如一段错n次的谭浩强.一页错n次的严蔚敏... 中文图书个人白名单:机械工业出版社.电 ...
随机推荐
- 写两个线程,一个线程打印1-52,另一个线程打印A-Z,打印顺序为12A34B56C......5152Z
题目: 写两个线程,一个线程打印1-52,另一个线程打印A-Z,打印顺序为12A34B56C......5152Z.要求用线程间的通信. /** * 写两个线程,第一个线程打印1-52,第二个线程打印 ...
- python 利用已有Ner模型进行数据清洗合并
# -*- coding: utf-8 -*- from kashgari.corpus import DataReader import re from tqdm import tqdm def c ...
- Spring Boot 实际操作
1.什么是springboot 2.springboot的很多默认编码方式都是utf-8,真是福利啊. 3.spring boot如何启动和访问和MocMvc测试 4.开发环境的调试热启动 5.app ...
- Linux排查磁盘空间顺序解决空间不足问题
1 先查看整个磁盘的情况 df -h 查看整台服务器的硬盘使用情况 cd / 进入根目录 du -s ...
- linux svn 安装
1.环境centos6.4 2.安装svnyum -y install subversion 3.配置 建立版本库目录mkdir /var/www/svndata svnserve -d -r /va ...
- hadoop工作流程
一)任务流程 1)Mapreduce程序启动一个Jobclient实例,开启整个mapreduce作业 2)Jobclient通过getnewjobld()j接口向Jobtarker发出请求,以获得一 ...
- 阿里域名 ssl tomcat
1.首先注册一个域名 2.添加一个信息模板(域名服务里边) 3.域名解析(默认解析127.0.0.1) 可以ping 域名试下看是否解析了(阿里有参考视频) 4.ssl 证书 免费版,网上有教程 ...
- GridControl的列DisplayFormat自定义方法
定义格式化的类: public class EnableFormat : IFormatProvider, ICustomFormatter { public object GetFormat(Typ ...
- Qt:The CDB Process Terminated!调试失败
一般是找不到DLL库导致的CDB终止.
- php上传大文件1G
前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...