C++笔记

1。c++中的class Solution是什么意思?

声明一个解决方案的类,类中用来存放解决所有这类问题的函数方法,变量

class表示声明一个类,单词Solution是“解决方案”的意思。那么class Soulution 就是声明出一个解决方案的类,类中用来存放关于解决这一问题所需要的各种函数/方法、变量。

为什么要这样做呢,简单说来就是:

  • 抽象层面上更符合逻辑——针对某一问题的解决方案,方案里可以有若干成员变量和成员函数
  • 生成若干实例互不干扰——因为每个类的实例内部的(非静态)成员变量是独立的
  • 更“干净”,即不会污染到程序其他地方的代码——类中的成员不会与类外其他标识符冲突

一个类(生成的对象)可以理解成函数+函数运行需要的环境。如果函数不需要额外的运行环境,也可以把函数设置成静态的。

具体来说,比如我们有一个问题,需要用函数funcA()解决,而funcA()又需要调用函数funcX(), 而完成这个问题可能还需要一个int 型的变量val。

简单的C语言文件可能会这样写:

// solution.c

int val;

void funcX() { /* ... */ }

void funcA() { /* ... */ }

这样的话变量val还有函数funcA()和funcX()都是全局的,如果和其他很多很多的代码放在一起就有名称冲突的可能。不过在C++中,我们可以把它们放在一个类里面:

// solution.cpp

class Solution {

private:

  int val;

  void funcX() { /* ... */ }

public:

  void funcA() { /* ... */ }

};

因为需要对外可用的只有funcA这个接口,所以只把它设置成public就好了 。

然后在需要调用的地方调用就好了,比如main 函数:

int main() {

  Solution s;

  s.funcA();

}

当然,如果是解决某一问题的解决方案,也不一定用Solution作为类名,比如SolveAngle、MatrixAdd之类的也可以。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值