C++的结构块中成员函数的使用
来源:互联网 发布:mysql怎么创建数据库 编辑:程序博客网 时间:2024/06/15 14:02
C++允许在结构中定义函数,该函数称为成员函数。其描述形式如下:
struct 结构名{
数据成员
成员函数
}
下面是一个使用成员函数的例子
#include <iostream>/* run this program using the console pauser or add your own getch, system("pause") or input loop */using namespace std;struct Point{double m,n;void Setab(double a,double b){m=a;n=b;}void display(){cout<<"display()------>>" <<m<<"\t"<<n<<endl;}};int main(int argc, char** argv) {Point p;p.Setab(2,3);p.display();cout <<"数据成员"<<p.m<<"\t" <<p.n <<endl;return 0;}
总结:
1、用到了结构块 结构块中的函数调用的方法,写完上面程序发现C++的结构块像Java中静态方法,直接用结构名调用数据成员和成员函数;还有一个就是“\t” 是制表符意思是横向跳到下一个制表符的位置,相当于键盘上的Tab键,“\n”换行相当于endl;
2、在结构中成员默认都是public如不不希望对象直接访问数据成员,可以将数据成员使用private来修饰,即私有的数据成员,必须通过共有的成员函数才能使用,成为数据的封装性,下个小例子看看数据的封装性。
今天又运行了这个代码发现将结构体放到main后面后不能编译通过,查看日志找不到结构体 意思是没有声明结构体的,然后就看了一些书籍和文章有点人说在main函数之前添加struct Point; 但是这种写法是不行的根本没用然后就搜索结构体的声明然后看到声明的方式。下面将代码贴出来有需要的可以参考下。
#include "stdafx.h"#include <iostream>//命名空间 using namespace std;struct Point{double m,n;void setab(double a,double b);void disply();};int main() {Point p;p.setab(23,45);p.disply();getchar();return 0;}void Point::setab(double a,double b){m=a;n=b;}void Point::disply(){cout<<m<<n<<endl;}上述方式虽然是可以了但是看到结构体前置声明很麻烦 代码很多所以综合起来还是用第一种方式比较好直接将结构体放到main函数的上面,代码都是自上而下执行的。
- C++的结构块中成员函数的使用
- c 结构与成员属性结构 结构与函数 指向结构的指针
- 类成员函数中const的使用
- C++ 中const成员函数的使用
- 类成员函数中const的使用
- 类中静态成员函数的使用
- 类成员函数中const的使用
- c语言中静态成员的使用
- 简要分析C中结构的位域成员
- C/C++ 中访问结构体成员的方法
- C/C++ 中访问结构体成员的方法
- C语言中结构体内部成员的对齐
- C中结构体调用成员的方式
- C - 指定结构体中成员变量的位数
- C语言中结构体指针的成员变量访问
- C语言中结构体成员的访问
- 结构体中指针成员使用时的注意事项
- 关于类和结构体中静态成员的使用
- 黑马程序员 反射
- Geohash——地理坐标索引
- leetcode Largest Rectangle in Histogram
- 动感歌词的互转工具
- 让DIV+CSS兼容所有浏览器
- C++的结构块中成员函数的使用
- hdu4730 We Love MOE Girls
- AAC专利介绍
- HDU4720几何性质
- poj 113——wall
- LCS(最长公共子列--动态规划)
- LIS最长递增子序列DPC++实现
- 高性能javascript
- paip.QQ音乐导出歌单总结