C++ and Java template class and function 模板类和模板函数
2023-09-11 14:21:39 时间
在C++和Java的泛式编程中,模板template的使用是必不可少的,但是Java中没有template关键字,所以两者的写法还是有些许区别的,请参见如下代码:
Java的模板
// Java public class Cell<K, V> { private K _key; private V _value; public Cell(K k, V v) { _key = k; _value = v; } public boolean equivalent(Cell<K, V> c) { return equivalent(c.getKey()); } public boolean equivalent(K k) { return key.equals(k); } public K getKey() { return _key; } public V getValue() { return _value; } }
C++的模板
// C++ template<typename K, typename V> class Cell{ public: Cell(K k, V v): _key(k), _value(v) {} bool equivalent(Cell *c) { return equivalent(c->getKey()); } bool equivalent(K k) { return _key.equals(k); } K getKey() { return _key; } V getValue() { return _value; } private: K _key; V _value; };
由上面的实例我们可以看出C++和Java在使用模板template写法上的不同,对于同一个类的两种语言的实现的对比,我们也能观察到一些C++和Java的其他不同之处:
1. Java对于每个变量或函数分别定义public还是private,而C++是分区的
2. Java里不存在指针的概念,和C++的一大重点就是指针
相关文章
- JAVA 注解教程(四)Java 预置的注解
- java中你知道这四种代码块吗?
- java实现人脸识别源码【含测试效果图】——Dao层(IUserDao)
- Java实现 LeetCode 429 N叉树的层序遍历
- Java实现 LeetCode 213 打家劫舍 II(二)
- Java实现埃拉托色尼筛选法
- Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
- Atitit. 悬浮窗口的实现 java swing c# .net c++ js html 的实现
- paip.uapi 获取网络url内容html 的方法java php ahk c++ python总结.
- 华为OD机试 - 整数对最小和(Java & JS & Python)
- 第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-193 Password Suspects(C++&Java)
- 软考中级(软件设计师)——面向对象程序设计(C++&Java二选一的题15分-目标3分)
- 今儿直白的用盖房子为例,给你讲讲Java建造者模式
- 从C、C++、Java到Python,编程入门到底学什么语言好?
- 【 华为OD机试 2023】 递增字符串(C++ Java JavaScript Python)
- 【 华为OD机试 2023】 组装新的数组(C++ Java JavaScript Python)
- 解答私信@被c++折磨头秃的花季美少女 //C++ 编写一个进阶版的进制转换程序,运行功能如下:请选择要输入的数字的进制(2、8、10、16):请输入该数字:请选择要转换成的进制(2、8。。。
- JAVA编程:java环境安装和helloworld
- 【Android 内存优化】Android 原生 API 图片压缩原理 ( 图片质量压缩方法 | 查找 Java 源码中的 native 方法对应的 C++ 源码 )
- java日期和时间Date、Calendar、SimpleDateFormat
- 使用Java操作Elasticsearch(Elasticsearch的java api使用)
- JAVA-SUST实验一 JSP技术及JSP语法基础
- 【java】Java IO体系总览
- 【Java包装类】Integer、Boolean、Byte、Character、Double、Number