[转载] java程序员快速学c++

参考链接: 如何成为一名优秀的Java程序员

java程序员快速学c++   java程序员学cplus,其实大部分的语法是一样的,但是对java程序员来将,还是有写难点需要注意。看完这些还不能保证会写c++程序,不过一般的程序可以看懂,要写的话要多多练习。 ---这是一个学习笔记,作为自己学习的记录,还没有完成,在随后的过程中进行完善。  一、头文件部分: 1、cplus中的函数最好要先声明,声明最好要放入头文件中,这样在cpp中就可以不用管函数定义的位置,这时头文件还类似于java中接口的作用; 2、全局变量在头文件中声明,声明时有初始化的是定义声明,其他声明是引用声明。C语言的所有文件之中,只能有一个定义声明。变量一般不要定义在.h文件中。 3、定义声明数组时,应用声明最好不要用指针。连接程序并不把指针与数组等同,也不把他们当做同一个定义,而是认为是不相关的两个定义。 4、写类的声明(包括类里面的成员和方法的声明)、函数原型、#define常数等,但一般来说不写出具体的实现。 5、在写头文件时需要注意,在开头和结尾处必须按照如下样式加上预编译语句(如下): #ifndef CIRCLE_H #define CIRCLE_H //你的代码写在这里 #endif 这样做是为了防止重复编译,不这样做就有可能出错。至于CIRCLE_H这个标识任意取名,不过要唯一,标识的命名规则一般是头文件名全大写,前后加下划线,并把文件名中的“.”也变成下划线。http://blog.csdn.net/Super_Level/article/details/21299481 比如你有两个C文件,这两个C文件都include了同一个头文件。而编译时,这两个C文件要一同编译成一个可运行文件,于是问题来了,大量的声明冲突。头文件的内容放在这里后,冲突问题编译器就可以解决。 6、源文件主要写实现头文件中已经声明的那些函数的具体代码。需要注意的是,开头必须#include一下实现的头文件,以及要用到的头文件。那么当你需要用到自己写的头文件中的类时,只需要#include进来就行了。http://blog.csdn.net/cyp331203/article/details/22606249 7、#define。C或C++语言源程序中允许用一个标识符来表示一个字符串,称为“宏”。被定义为“宏”的标识符称为“宏名”。在编译预处理时,对程序中所有出现的“宏名”,都用宏定义中的字符串去代换,这称为“宏代换”或“宏展开”。宏定义是由源程序中的宏定义命令完成的。宏代换是由预处理程序自动完成的。http://www.cnblogs.com/ben0721/articles/1938639.html “宏”分为有参数和无参数两种。 #define 标识符 字符串 #define 宏名(形参表) 字符串 “#”表示这是一条预处理命令。凡是以“#”开头的均为预处理命令。“define”为宏定义命令。“标识符”为所定义的宏名。“字符串”可以是常数、表达式、格式串等。 8、标准宏。 ANSI标准说明了五个预定义的宏名。它们是:__LINE__,__FILE__,__DATE__,__TIME__,__STDC__ C++中还定义了__cplusplus 如果编译器不是标准的,则可能仅支持以上宏名中的几个,或根本不支持。记住编译程序也许还提供其它预定义的宏名。 __LINE__及__FILE__宏指示,#line指令可以改变它的值,简单的讲,编译时,它们包含程序的当前行数和文件名。 __DATE__宏指令含有形式为月/日/年的串,表示源文件被翻译到代码时的日期。__TIME__宏指令包含程序编译的时间。时间用字符串表示,其形式为:分:秒 __STDC__宏指令的意义是编译时定义的。一般来讲,如果__STDC__已经定义,编译器将仅接受不包含任何非标准扩展的标准C/C++代码。如果实现是标准的,则宏__STDC__含有十进制常量1。如果它含有任何其它数,则实现是非标准的。 __cplusplus与标准c++一致的编译器把它定义为一个包含至少6为的数值。与标准c++不一致的编译器将使用具有5位或更少的数值。可以定义宏,例如: 当定义了_DEBUG,输出数据信息和所在文件所在行。   二、源文件部分 1、\ 在cplus中表示该行没有结束; 2、 #ifndef#define#endif实现条件编译, #ifdef 标识符  程序段1  #else  程序段2  #endif  当标识符已经被定义过(一般是用#define命令定义),则对程序段1进行编译,否则编译程序段2。 这里的“程序段”可以是语句组,也可以是命令行。这种条件编译可以提高C源程序的通用性。如果一个C源程序在不同计算机系统上系统上运行,而不同的计算机又有一定的差异。http://blog.csdn.net/Super_Level/article/details/21299481   3、语言中的符号意义和部分关键字 ■->C++指针调用的意思。指向结构体或者类指针用来引用对象里面变量时用。 ■::作用域,声明该符号后面函数、数据等属于哪个类,一般用于静态; ■:用于继承父类: class lzbb:public lzb; lzb父类lzbb子类; c++支持多继承; 基类和派生类构造函数:  当调用派生类时首先会执行基类构造函数执行派生类构造函数所我们想给基类构造函数参数传值也用冒号:  基类构造函数:lzb(int a){cout<派生类构造函数:lzbb(int a,int b);  当我们开始调用基类构造函数首先调用了lzb我们给lzba赋值  下写法:lzbb::lzbb(int a,int b):lzb(a){cout<此时我们传实参时首先会把a值赋值给lzba输出b等于传入给b实参值; http://zhidao.baidu.com/question/2951346.html ■.对象中的成员,用于非静态的调用。 ■typeof取表达式或表达式值的类型,和模板的配合使用比较多; ■typeid返回给一个type_info 定义过的对象的那个对象的类型; ■typedef允许你从一个现有的类型中创建一个新类型; ■typename能用来在中 template 描述一个未定义类型或者代替关键字class;   4、template <class T> 或template<typename T> class 标明下面的参数是属于什么类型的。这个在java中也是有的。 模板就是函数或类,模板可以解决同类型问题。(这块内容还是比较多,一笔带过先)。   5、inline函数也所谓内联函数,不建议多使用。    

6、指针是内存单元的地址,数据是内存单元的内容。(未完!!) 

  

  

(未完!!)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/540404.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[转载] Java标识符 数据类型 常量与变量

参考链接&#xff1a; Java标识符 Java标识符 Java对包、类、接口、方法、变量、常量&#xff08;不包括项目名&#xff09;等命名时使用的字符序列称为标识符。 命名规范&#xff1a; 1.标识符由数字、字母、_、$组成&#xff0c;且首字母不能是数字。 2.标识符对大小…

设计模式单例

单例模式 设计原则&#xff1a;无常用场景&#xff1a;应用中有对象需要是全局的且唯一使用概率&#xff1a;99.99999%复杂度&#xff1a;低变化点&#xff1a;无选择关键点&#xff1a;一个对象在应用中出现多个实例是否会引起逻辑上或者是程序上的错误逆鳞&#xff1a;在以为…

Squid服务日志分析

Squid服务日志分析 Apache 和 Squid 是两种著名的代理缓存软件&#xff0c;但Squid 较 Apache 而言是专门的代理缓存服务器软件&#xff0c;其代理缓存的功能强大&#xff0c;支持 HTTP/1.1 协议&#xff0c;其缓存对象也较多&#xff1b;并且 Squid 的缓存管理模块和访问控制模…

[转载] Java中的元数据

参考链接&#xff1a; Java中的数据类型 元数据 也可能刚听到元数据你会有点陌生&#xff0c;其实任何一个使用过struts&#xff0c;ejb或者hibernate的开发人员都在不知不觉中使用元数据。所谓的元数据是指用来描述数据的数据&#xff0c;更通俗一点就是描述代码间关系&#…

云时代 揭开性能监测战略的隐秘优势

云时代的性能监测战略 能够对各种变化做出快速响应而不偏离重心和企业发展动力&#xff0c;正逐渐成为各行各业、各种规模企业的奋斗目标。业务敏捷性通常是运营良好&#xff0c;可实现盈利的企业标志。实现这一目标意味着公司已经成功地利用业务关键型技术来提高生产率&#x…

[转载] java 枚举Enum源码解析

参考链接&#xff1a; 使用Java枚举 应用场景 枚举是单例模式中的一种。面试官系统之设计模式&#xff08;单例模式&#xff09; 简单来讲就是只能实例化一次&#xff0c;线程安全且性能高。枚举通常用来列举一个类型的有限实例集合&#xff0c;我们可以使用常量集来实现&…

聊聊全站HTTPS带来的技术挑战

日前写的文章里了讨论了数据传输的安全性的问题&#xff0c;最后一部分提到了通过HTTPS解决数据传输安全性的方案。那么一个新问题又来了&#xff0c;实施全站HTTPS的过程中&#xff0c;我们可能会遇到哪些技术问题?所以我今天和大家一起来算一下这个账&#xff0c;将技术成本…

[转载] spring mvc自定义int枚举转换器

参考链接&#xff1a; Java中具有自定义值的枚举 2019独角兽企业重金招聘Python工程师标准>>> public class MyIntegerEnumConverters { WritingConverter public static class EnumToIntegerConverter implements Converter<IntEnumConvertable, String> {…

使用BufferedImage进行渐变色操作

序 本文主要简述一下如何使用BufferedImage进行渐变色操作。 GradientPaint java/awt/GradientPaint.java public class GradientPaint implements Paint {Point2D.Float p1;Point2D.Float p2;Color color1;Color color2;boolean cyclic;//...... } 这个是生成渐变色的关…

[转载] Java中的字符串处理

参考链接&#xff1a; Java中的StringBuffer appendCodePoint()方法以及示例 JDK8在线Api中文手册 JDK8在线Api英文手册 Java中的字符串处理 1.1 String类的构造函数1.2 字符串的长度1.3 特殊的字符串操作1.3.1 字符串字面值1.3.2 字符串连接1.3.3 字符串和其他数据类型的连…

MySQL循环语句之while循环测试

转自&#xff1a;http://www.nuoweb.com/database/7614.htmlMySQL有循环语句操作&#xff0c;while 循环、loop循环和repeat循环&#xff0c;目前我只测试了 while 循环&#xff0c;下面与大家分享下mysql 操作同样有循环语句操作&#xff0c;网上说有3中标准的循环方式&#x…

[转载] JAVA环境变量配置

参考链接&#xff1a; Java中的变量 安装JDK(1.8) Oracle官网 下载jdk 百度网盘window版本 提取码&#xff1a;o99i win 10环境变量配置 在电脑桌面 右键点击 此电脑 的 属性 选项 选择 高级系统设置 > 然后点击 环境变量 选项 点击 系统变量 下的 新建 按钮&#xf…

[转载] Java中的变量和常量

参考链接&#xff1a; Java中的变量范围 在程序中存在大量的数据来代表程序的状态&#xff0c;其中有些数据在程序的运行过程中值会发生改变&#xff0c;有些数据在程序运行过程中值不能发生改变&#xff0c;这些数据在程序中分别被叫做变量和常量。 在实际的程序中&#xf…

4.3/4.4 磁盘分区

2019独角兽企业重金招聘Python工程师标准>>> 添加虚拟磁盘 第一步&#xff0c;选择虚拟机中的“设置” 第二步&#xff0c;选择“添加硬盘” 第三步&#xff0c;选择_SCSI &#xff08;推荐&#xff09; # 保持默认 第四步&#xff0c;选择“创建新的虚拟磁盘…

[转载] java(三)对象的序列化与static、final关键字

参考链接&#xff1a; Java中的final最终变量 java对象的序列化 Java序列化是指把Java对象转换为字节序列的过程&#xff1b;而Java反序列化是指把字节序列恢复为Java对象的过程。java中存有Cloneable接口&#xff0c;实现此接口的类都具有被拷贝能力&#xff0c;比new一个对象…

RoboMaster 2017:机器人版的「王者农药」,工程师们的竞技时代

8月6日晚&#xff0c;第十六届全国大学生机器人大赛 RoboMaster 2017机甲大师赛在华润深圳湾体育中心“春茧”体育馆举行&#xff0c;关于这个比赛的盛况已经无需赘述&#xff0c;去年雷锋网参加上届比赛时&#xff0c;报道的是「像看了一场演唱会」&#xff0c;如果用演唱会来…

[转载] 详解Java中的泛型

参考链接&#xff1a; Java中具有泛型的有界类型 1、什么是泛型 泛型&#xff0c;即“参数化类型”。一提到参数&#xff0c;最熟悉的就是定义方法时有形参&#xff0c;然后调用此方法时传递实参。那么参数化类型怎么理解呢&#xff1f;顾名思义&#xff0c;就是将类型由原来…

【初学者必读】:前端工程师的知识体系

下图是前端工程师图解&#xff1a; 前端开发的核心是HTML CSS JavaScript。本质上它们构成一个MVC框架&#xff0c;即HTML作为信息模型&#xff08;Model&#xff09;&#xff0c;CSS控制样式&#xff08;View&#xff09;&#xff0c;JavaScript负责调度数据和实现某种展现逻…

[转载] Java面试题大全(2020版)

参考链接&#xff1a; Java中的循环 发现网上很多Java面试题都没有答案&#xff0c;所以花了很长时间搜集整理出来了这套Java面试题大全&#xff0c;希望对大家有帮助哈~ 本套Java面试题大全&#xff0c;全的不能再全&#xff0c;哈哈~ 博主已将以下这些面试题整理成了一个…

使用Prometheus监控Cloudflare的全球网络

Matt Bostock在SRECON 2017欧洲大会的演讲中&#xff0c;介绍了如何使用Prometheus实现对CloudFlare分布于全球的架构和网络的监控。Prometheus是一种基于度量进行监控的工具&#xff0c;CloudFlare是一家CDN、DNS和DDoS防御&#xff08;Mitigation&#xff09;服务提供商。\\基…