-
类和结构体很相似,但类有自己的成员函数成员变量,结构体只有成员变量;类的成员有封装类型,结构体没有,也即默认结构体的成员变量都是“public”,没有封装性。查看全部
-
string 并不是C++语言本身具有的基本类型,它是在C++标准库中声明的一个字符串类,用这种类可以定义对象。string str0;str0.size()//求字符串长度 str0.empty()//判断字符串空 str0[0]//字符串首字符查看全部
-
从栈中实例化对象:直接设置对象,如Tv tv ,TV tv[20](对象数组);对象使用过后,不需要释放,系统会自动回收。 从堆中实例对象:要加指针,指向申请出来一块内存.申请完成之后,一定要释放掉.如:Tv *p= new Tv(); Tv *p= new Tv[20]; 释放delete p ; delete []q;(用new的方法申请存储空间,有可能会失败,如果失败的话,返回值就为NULL,即p=NULL)查看全部
-
数据封装:定义一个Student类,含有如下信息: a、姓名:name; b、性别:gender; c、学分(只读):score; d、学习:study; #include <iostream> #include <stdlib.h> #include <string> using namespace std; class student { public: void setName(string _name){ m_strName=_name; } string getName(){ return m_strName; } void setGender(string _gender){ m_strGender=_gender; } string getGender(){ return m_strGender; } int getScore(){ return m_iScore; } void initScore(){ m_iScore=0; } void study(int _score){ m_iScore +=_score; //m_iScore=m_iScore+_score; } private: string m_strName; string m_strGender; int m_iScore; } int main(void){ Student stu; stu.initScore(); stu.setName("ammy"); stu.setGender("male"); stu.study(5); stu.study(3); cout <<stu.getName()<<","<<stu.getGender<<","<<stu.getScore()<<endl; system("pause"); }查看全部
-
在右边,只会打印一次Student,即只调用一次默认构造函数; 红色的两次调用的是系统自动生成的拷贝构造函数.查看全部
-
构造函数:查看全部
-
一个类可以没有默认构造函数,有别的构造函数也可以实例化对象; 拷贝构造函数:查看全部
-
示例:通过初始化列表初始化const成员变量查看全部
-
内存分区:查看全部
-
(函数)分文件定义:查看全部
-
(函数)同文件内定义:查看全部
-
(函数)类内定义:把函数的定义写在类内(而不是函数的申明) (函数)类外定义:查看全部
-
构造函数可以参数赋值默认值,可能会出错查看全部
-
new ----delete 构造函数在对象实例化时被自动调用,仅一次 构造函数与类同名 构造函数没有返回值 无参构造函数 Student() { m_strName="jim"; } 有参构造函数 Student(string name) { m_strName=name; }查看全部
-
string m_strName查看全部
举报
0/150
提交
取消