C++ 通过对象方式 、指针方式两种方式去访问成员变量(属性或者方法)
准备
1.在VS中新建一个项目-Viscal C++ ---常规--空项目
2.建立一个.h的头文件 定义一个类 声明其成员(C#中的属性和方法)
#include<iostream>
#include<string>
using namespace std;
class Person
{
public:
void setId(int id);
int getId();
void setName(string name);
string getName();
void setAge(int age);
int getAge();
private:
int _id;
string _name;
int _age;
};
建立一个.cpp的文件 声明一个类 实现成员变量初始化操作
#include "Per.h";
using namespace std;
void Person::setId(int id){
this->_id = id;
}
void Person::setName(string name){
this->_name = name;
}
void Person::setAge(int age){
this->_age= age;
}
int Person::getId(){
return this->_id;
}
string Person::getName(){
return this->_name;
}
int Person::getAge(){
return this->_age;
}
int main(){
}
通过对象方式
Person Per;
Per.setId();
Per.setAge();
Per.setName("Tony");
int id = Per.getId();
string name = Per.getName();
int age = Per.getAge();
cout << id <<","<< name <<","<< age<<endl;
system("pause");
return ;
通过指针方式
Person *Per = new Person();
Per->setId(1);
Per->setName("Tommy");
Per->setAge(20);
int id = Per->getId();
string name = Per->getName();
int age = Per->getAge();
cout << id <<","<< name <<","<< age<<endl;
delete Per;
system("pause");
return 0;
完成代码例子
#include "Per.h";
using namespace std;
void Person::setId(int id){
this->_id = id;
}
void Person::setName(string name){
this->_name = name;
}
void Person::setAge(int age){
this->_age= age;
}
int Person::getId(){
return this->_id;
}
string Person::getName(){
return this->_name;
}
int Person::getAge(){
return this->_age;
}
int main(){
//1.通过对象方式访问
//Person Per;
//Per.setId(1);
//Per.setAge(25);
//Per.setName("Tony");
//int id = Per.getId();
//string name = Per.getName();
//int age = Per.getAge();
//2.通过指针方式访问
Person *Per = new Person();
Per->setId();
Per->setName("Tommy");
Per->setAge();
int id = Per->getId();
string name = Per->getName();
int age = Per->getAge();
cout << id <<","<< name <<","<< age<<endl;
delete Per;
system("pause");
return ;
}

C++ 通过对象方式 、指针方式两种方式去访问成员变量(属性或者方法)的更多相关文章
- 将图片base64格式转换为file对象并读取(两种方式读取)
两种方式读取,一种URL.createObjectURL,另一种fileReader var base64 = ` data:image/jpeg;base64,/9j/4AAQSkZJRgABA ...
- js对象取值的两种方式
:"李四"}; var v1 = obj.name1; //张三, 使用点的方式 //报错,不能使用点的方式 ]; //李四,使用中括号的方式 var key = "na ...
- spring配置文件注解方式引入的两种方式
一.#{beanID['propertiesName']}方式 <bean id="propertyConfigurer" class="org.springfra ...
- spring boot 集成 Filter 的两种方式
两种方式:(两种方式同时存在时,@Bean优先@ServletComponentScan实例化,生成两个对象) 1)@ServletComponentScan注解+@WebFilter注解 2)@Be ...
- spring boot集成 servlet自动注册的两种方式
有两种方式:(两种方式同时存在时,@Bean优先@ServletComponentScan实例化,生成两个对象) 1)通过@ServletComponentScan类注解 扫描 带有@WebServl ...
- .NET环境下导出Excel表格的两种方式和导入两种类型的Excel表格
一.导出Excel表格的两种方式,其中两种方式指的是导出XML数据类型的Excel(即保存的时候可以只需要修改扩展名为.xls)和真正的Excel这两种. using System; using Sy ...
- Asp.net Web API 返回Json对象的两种方式
这两种方式都是以HttpResponseMessage的形式返回, 方式一:以字符串的形式 var content = new StringContent("{\"FileName ...
- 对于String对象,可以使用"="赋值,也可以使用"new"关键字赋值,两种方式有什么区别?
当你看见这个标题的时候,你可能会下意识的去想一下,这两种方式到底有什么样的区别呢? 且看下面的demo,自然便区分开了 /** * */ package com.b510.test; /** * Pr ...
- java 的对象拷贝(有深浅拷贝两种方式,深拷贝实现的两种方式(逐层实现cloneable接口,序列化的方式来实现))
Java提高篇--对象克隆(复制)(转自:http://www.cnblogs.com/Qian123/p/5710533.html#_label0) 阅读目录 为什么要克隆? 如何实现克隆 浅克 ...
随机推荐
- 一种简单的权限管理ER图设计
权限管理支持动态地管理用户的角色和权限.权限代表用户可以在什么对象上进行什么操作:角色是一组权限的集合. PS:当增加或删除某个用户的角色时,系统自动将该角色对应的权限(角色 -权限关联表)增加或删除 ...
- iOS 简单总结:description方法\NSLog函数
1.description方法是NSObject自带的方法,包括类方法和对象方法 + (NSString *)description; // 默认返回 类名 - (NSString *)descrip ...
- Nginx日志按天分割
核心思想:使用crontab在每日23:59执行日志分割. 1.配置nginx日志信息,vim /etc/logrotate.d/nginx /var/log/nginx/*.log { nocomp ...
- GDI+绘制文本
这是在论坛中有人提出的一个问题,原贴见:Graphics DrawString参数无效.这里给出方法,读者可以自行修改以适应自己的项目需求. 先上代码: if (!Page.IsPostBack) { ...
- html5画四边形
<canvas id='test02'></canvas> <script> var canvas = document.getElementById('test0 ...
- 1.JSP 简介及工作原理
1.JSP 简介 JSP(Java Server Pages)是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态网页技术标准.JSP技术有点类似ASP技术,它是在传统的网页H ...
- WebApp之 apple-touch-icon
在iPhone,iPad,iTouch的safari上可以使用添加到主屏按钮将网站添加到主屏幕上.apple-touch-icon是IOS设备的私有标签,如果设置了相应apple-touch-icon ...
- spot 5、ALOS监督分类波段组成
spot 5监督分类RGB:412 ALOS分类波段RGB:432
- oracle创建表空间、用户
创建表空间 create tablespace '<数据库名>' datafile '<存储路径>' size 500M default storage (initial 20 ...
- 2016 系统设计第一期 (档案一)MVC 相关控件整理
说明:前者是MVC,后者是boostrap 1.form 表单 @using (Html.BeginForm("Create", "User", FormMet ...