C++学习笔记-类定义的注意事项和C#的区别
1:
类当中的一批函数可以被一个public关键字引导
来标明这些函数是公开的
2:
成员函数可以放在类的外部定义
但必须在类的内部做声明
在类外部做定义的时候必须形如这样:
bool YorClassName::YorMethordName(int param)
{
//....
return true;
}
就如同C#中的完全限定名
YorClassName::YorMethordName
如果在类中定义成员函数的话,就不用这样了
3:
创建一个对象完全可以不用new
形如:
YorClassName target;
target.doSth();
4:
函数定义体的花括号后面是没有分号的
类定义体的花括号后面是要有个分号的
这是C的遗留问题
(c里面根本就没有类,类是C++对C里的结构struct类型扩展出来的)
5:
只要在类当中定义成员函数,
那么这个函数就是内联的
在类外部定义的函数除非形如这样的才会编译成内联
inline bool YorClassName::YorMethordName(int param)
{
//....
return true;
}
如果从模式,多人协作方面考虑
(让类有C#中接口的作用)
应尽量把方法放在类外面定义
一般来说短小的,不超过三行的成员函数的定义,放在类中比较合适
转载于:https://www.cnblogs.com/liulun/archive/2009/12/28/1634490.html
C++学习笔记-类定义的注意事项和C#的区别相关推荐
- Python笔记——类定义
Python笔记--类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...
- C++ 学习笔记----类篇
(一)基本概念: 1.类与对象: 1 //声明类 2 class Human { 3 4 //... Data members and methods go here 5 6 }; 7 8 //定义对 ...
- Java 入门知识学习笔记 (类和对象)
一.类和对象的定义及关系 1.类是同一类别对象的抽象定义:可以理解为是某一类具体对象的模子,确定对象将会拥有的特性,包括该类对象具备的属性和方法. 2.对象是对类的一种具体化的客观存在,是对类的具体实 ...
- python学习笔记——类
# coding='utf-8'class User():def __init__(self,name,sex):self.name = nameself.sex = sexprint '这里是构造函 ...
- Java学习笔记类对象多态继承(下)
面向对象(下) 1.类的继承 一.什么是继承,有什么用? 继承:在现实世界当中也是存在的,例如:父亲很有钱,几子不用努力也很有钱 继承的作用: 基本作用:子类继承父类,代码可以得到复用.(这个不是重要 ...
- Python 学习笔记 类的封装 类的继承 多态继承 类方法和静态方法 单例设计模式
一.类的封装: 1.概念: 广义的封装:函数和类的定义本身,就是封装的体现 狭义的封装:一个类的某些属性,在使用的过程 中,不希望被外界直接访问,而是把这个属性给作为私有的[只有当前类持有],然后暴露 ...
- Kotlin学习笔记——类和对象
推荐kotlin学习书籍 下载链接: https://pan.baidu.com/s/19b5WYDD3Yqh1CAsRvpUsqQ 提取码获取方式:扫描关注下面微信公众号,回复关键字: kotlin ...
- 廖雪峰Python学习笔记——类和实例
Class MyList(list): __metaclass__ = ListMetaclass #它表示在创建MyList这个类时,必须通过 ListMetaclass这个元类的LIstMetac ...
- Python3学习笔记——类
#!/usr/bin/env python #-*- coding:utf-8 -*- #面向对象(类+对象) 三大特性:封装.继承.多态 类的成员:字段:普通字段:保存在对象(实例)中,执行只能通过 ...
最新文章
- 开关机自动执行脚本方法[以及切换用户执行命令方法]
- 自已动手写控件 --- 我第一次学习写自定义控件
- 谁有正版的matlab,matlab正版
- ubuntu 中的qt怎么调用graphics.h_Qt 标准对话框之 QFileDialog
- eclipse启动提示java,Eclipse启动时报错-JSP教程,Java技巧及代码
- 配置 Syslog 守护程序
- SonicWall 紧急提醒:EOL 设备正遭勒索攻击!
- 【JSP内置对象】之9大内置对象(JavaWeb必背必掌握)
- eviews9.0详细安装步骤
- WebWork深入浅出(http://www.blogjava.net/moxie/archive/2006/10/20/76375.html)
- ITIL 4 Foundation-指导原则
- 阿里云安装MySQL数据库全过程(适合小白)
- ESP8266 WIFI模块学习之路(7)——自写Android手机APP接受单片机数据
- Ubuntu下显示Git仓库分支信息
- Mybatis分页实现
- 微信小程序 图表chart
- ACW829模拟队列
- 2021秋招拼多多笔试算法题
- 微弱信号检测中四种降噪滤波方法的matlab实现
- js导出数据到excel,兼容ie浏览器
热门文章
- css grid随页面大小_你现在可以玩下这 5 个 CSS 新功能
- synchronized 异常_Java:synchronized的深度解析
- OpenCV计算机视觉实战(Python版)_002图像基本操作
- angularjs中按回车事件_浅谈angularjs中响应回车事件
- php有哪些程序结构,PHP常用控制结构
- 计算机组成原理AB什么运算,2010~2011学年武汉大学计算机组成原理AB类AB卷及答案...
- 计算机属性桌面打不开怎么办,win10电脑桌面图标属性打不开如何解决_win10无法打开桌面图标属性面板解决步骤...
- 中移4G模块-ML302-OpenCpu开发-串口开发
- pytorch 复制、粘贴、替换Model某一层的训练参数
- pytorch使用GPU训练模型