- 什么是类
类是存放数据和方法的地方,是抽象的对象
答案:类是用户定义的类型的定义。类声明指定了数据将如何存储,同时指定了用来访问和操纵这些数据的方法(成员函数) - 类如何实现抽象、封装和数据隐藏
抽象:表示人们可以通过类方法的公有接口对类对象执行的操作
封装:实现的具体细节都是隐藏的,这就是封装
数据隐藏:可以用关键字private修饰数据,只能通过成员函数来访问这些数据 - 对象是类的实例
答案:类定义了一种类型,包括如何使用它,对象是一个变量和其他数据对象,并根据类定义而被创建和使用。类和对象之间的关系同标准类型与变量之间的关系 - 数据成员一般是private,而成员函数一般作为接口是public;如果给定类的多个对象,则每个对象都有自己的存储空间,但所有对象都是同相同的成员函数
class user_bank
{
string name;//用户名
string user;//账号
double bank_money;//存款
public:
user_bank(const std::string &client,const std::string &num,double bal = 0.0);//默认构造函数 用来初始化类成员
void show(void) const;//const成员函数内不允许修改成员 因为这是一个输出函数
void deposit(double cash);//
void withdraw(double cash);//
};
- 类构造函数会在创建对象或者显示调用构造函数时候被调用,析构函数会在对象被清理(过期)之后调用
user_bank::user_bank(const std::string &client,const std::string num,double bal)
{
bank_money = bal;
name = client;
user = num;
}
或者
er_bank::user_bank(const char*client,const char*num,double bal)
{
strncpy(name,client,39);
name[39] = '\0';
strncpy(user,num,24);
name[24] = '\0';
bank_money = bal;
}
8.默认构造函数是用户没有指定构造函数由系统生成的构造函数,不含参数或者参数都是默认
9.
#pragma once
#include<string>
#ifndef _STOCK_H
#define _STOCK_H
class Stock
{
private:
std::string company;
long share;
double share_val;
double total_val;
void set_tot() { total_val = share_val * share; }
public:
Stock();
~Stock();
Stock(const std::string& co, long n, double pr);
void buy(long num, double price);
void sell(long num, double price);
void update(double price);
void show() const;
const Stock& topval(const Stock& s) const;
int numshares() const
{
return share;
}
double shareval() const
{
return share_val;
}
double totalval()const
{
return total_val;
}
const string& co_name()const
{
return company;
}
};
#endif // ! _STOCK_H
10.this是指针,*this是对象
网站标题:CV鼻祖洋芋
原创文章,作者:locus,如若转载,请注明出处:https://blog.cvpotato.cn/forward-code/c/212/
本博客所发布的内容,部分为原创文章,转载注明来源,网络转载文章如有侵权请联系站长!