博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struct 构造函数
阅读量:5051 次
发布时间:2019-06-12

本文共 894 字,大约阅读时间需要 2 分钟。

声明一个变量,如果没有赋值就使用(编译器会给其一个对应类型的默认值,但这不是赋值),那么就会出错,通常情况下编译器可以帮助发现问题(使用未赋值的变量编译通不过)。构造函数是用来初始化类、结构成员变量的。除了要初始化声明的成员变量,还需要考虑初始化的时机。如下面这个:

public struct MyDataCode {
string m_name; int m_age; public MyData(string name ,int age,bool flag)     { if (flag)         {
proccess(); } m_name = string.Empty; m_age = 0; } void proccess()     {
m_age+= 1; } // code ecli. }

这个是编译通不过的。需要将所有的成员变量初始化放在最前面。这么更改就可以了:

public struct MyData {
string m_name; int m_age; public MyData(string name ,int age,bool flag) { m_name = string.Empty; m_age = 0; if (flag) {
proccess(); } } void proccess() {
m_age+= 1; } // code ecli. }

举这个例子只是为了说明在初始成员变量的时候要考虑时机。struct声明的时候是不可以进行赋值操作的,在类中可以。所有的成员变量未被赋值之前,操作成员函数也就不允许。

转载于:https://www.cnblogs.com/s7vens/archive/2012/03/06/2382284.html

你可能感兴趣的文章
【linux】重置fedora root密码
查看>>
pig自定义UDF
查看>>
输入名字显示其生日,没有则让输入生日,做记录
查看>>
Kubernetes 运维学习笔记
查看>>
并查集 经典 畅通工程
查看>>
Spark MLlib 之 Naive Bayes
查看>>
php修改SESSION的有效生存时间
查看>>
spring security 11种过滤器介绍
查看>>
Hibernate一对多、多对一关联
查看>>
一、记录Git使用中遇到的问题及解决方法
查看>>
学习网址
查看>>
前端表格插件datatables
查看>>
内部类
查看>>
树链剖分入门
查看>>
图解算法时间复杂度
查看>>
UI_搭建MVC
查看>>
一个样例看清楚JQuery子元素选择器children()和find()的差别
查看>>
代码实现导航栏分割线
查看>>
Windows Phone开发(7):当好总舵主 转:http://blog.csdn.net/tcjiaan/article/details/7281421...
查看>>
VS 2010打开设计器出现错误
查看>>