please help me convert it into C++ ***Dollar.java*** public abstract class Dollar { private int currencyNoteValue; private int currencyCoinValue; public Dollar(int currencyNoteValue, int currencyCoinValue) { super(); this.currencyNoteValue = currencyNoteValue; this.currencyCoinValue = currencyCoinValue; } /** * @return the currencyNoteValue */ public int getCurrencyNoteValue() { return currencyNoteValue; } /** * @return the currencyCoinValue */ public int getCurrencyCoinValue() { return currencyCoinValue; } /** * @param currencyNoteValue the currencyNoteValue to set */ public void setCurrencyNoteValue(int currencyNoteValue) { this.currencyNoteValue = currencyNoteValue; } /** * @param currencyCoinValue the currencyCoinValue to set */ public void setCurrencyCoinValue(int currencyCoinValue) { this.currencyCoinValue = currencyCoinValue; } } ***USD.java*** public class USD extends Dollar { private String name; public USD() { super(0, 0); this.name="USD"; } public USD(int amount) { super(amount/100, amount%100); this.name="USD"; } public USD(USD obj) { super(obj.getCurrencyNoteValue(),obj.getCurrencyCoinValue()); this.name=obj.getName(); } protected void finalize() { System.out.println("Object is destroyed by the Garbage Collector"); } public void addCurrency(USD obj) { int coinvalue=super.getCurrencyCoinValue()+obj.getCurrencyCoinValue(); super.setCurrencyNoteValue(super.getCurrencyNoteValue()+obj.getCurrencyNoteValue()+coinvalue/100); super.setCurrencyCoinValue(coinvalue%100); } public void substractCurrency(USD obj) { int coinvalue=super.getCurrencyCoinValue()-obj.getCurrencyCoinValue(); if(coinvalue<0) super.setCurrencyNoteValue(super.getCurrencyNoteValue()-obj.getCurrencyNoteValue()-1); else super.setCurrencyNoteValue(super.getCurrencyNoteValue()-obj.getCurrencyNoteValue()); super.setCurrencyCoinValue(Math.abs(coinvalue)); } /* (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; USD other = (USD) obj; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; else if(!(super.getCurrencyNoteValue()==other.getCurrencyNoteValue())) return false; else if(!(super.getCurrencyCoinValue()==other.getCurrencyCoinValue())) return false; return true; } public boolean isLargerThan(USD obj) { if((super.getCurrencyNoteValue()>obj.getCurrencyNoteValue())) return true; else if((super.getCurrencyCoinValue()>obj.getCurrencyCoinValue())) return true; return false; } public void print() { System.out.println(toString()); } /* (non-Javadoc) * @see java.lang.Object#toString() */ @Override public String toString() { return "USD: " + getCurrencyNoteValue() + "." + getCurrencyCoinValue(); } /** * @return the name */ public String getName() { return name; } /** * @param name the name to set */ public void setName(String name) { this.name = name; } }
please help me convert it into C++
***Dollar.java*** public abstract class Dollar { private int currencyNoteValue; private int currencyCoinValue; public Dollar(int currencyNoteValue, int currencyCoinValue) { super(); this.currencyNoteValue = currencyNoteValue; this.currencyCoinValue = currencyCoinValue; } /** * @return the currencyNoteValue */ public int getCurrencyNoteValue() { return currencyNoteValue; } /** * @return the currencyCoinValue */ public int getCurrencyCoinValue() { return currencyCoinValue; } /** * @param currencyNoteValue the currencyNoteValue to set */ public void setCurrencyNoteValue(int currencyNoteValue) { this.currencyNoteValue = currencyNoteValue; } /** * @param currencyCoinValue the currencyCoinValue to set */ public void setCurrencyCoinValue(int currencyCoinValue) { this.currencyCoinValue = currencyCoinValue; } } ***USD.java*** public class USD extends Dollar { private String name; public USD() { super(0, 0); this.name="USD"; } public USD(int amount) { super(amount/100, amount%100); this.name="USD"; } public USD(USD obj) { super(obj.getCurrencyNoteValue(),obj.getCurrencyCoinValue()); this.name=obj.getName(); } protected void finalize() { System.out.println("Object is destroyed by the Garbage Collector"); } public void addCurrency(USD obj) { int coinvalue=super.getCurrencyCoinValue()+obj.getCurrencyCoinValue(); super.setCurrencyNoteValue(super.getCurrencyNoteValue()+obj.getCurrencyNoteValue()+coinvalue/100); super.setCurrencyCoinValue(coinvalue%100); } public void substractCurrency(USD obj) { int coinvalue=super.getCurrencyCoinValue()-obj.getCurrencyCoinValue(); if(coinvalue<0) super.setCurrencyNoteValue(super.getCurrencyNoteValue()-obj.getCurrencyNoteValue()-1); else super.setCurrencyNoteValue(super.getCurrencyNoteValue()-obj.getCurrencyNoteValue()); super.setCurrencyCoinValue(Math.abs(coinvalue)); } /* (non-Javadoc) * @see java.lang.Object#equals(java.lang.Object) */ @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; USD other = (USD) obj; if (name == null) { if (other.name != null) return false; } else if (!name.equals(other.name)) return false; else if(!(super.getCurrencyNoteValue()==other.getCurrencyNoteValue())) return false; else if(!(super.getCurrencyCoinValue()==other.getCurrencyCoinValue())) return false; return true; } public boolean isLargerThan(USD obj) { if((super.getCurrencyNoteValue()>obj.getCurrencyNoteValue())) return true; else if((super.getCurrencyCoinValue()>obj.getCurrencyCoinValue())) return true; return false; } public void print() { System.out.println(toString()); } /* (non-Javadoc) * @see java.lang.Object#toString() */ @Override public String toString() { return "USD: " + getCurrencyNoteValue() + "." + getCurrencyCoinValue(); } /** * @return the name */ public String getName() { return name; } /** * @param name the name to set */ public void setName(String name) { this.name = name; } }
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 2 images