Open In App

Similarities and Differences between Ruby and C++

Improve
Improve
Like Article
Like
Save
Share
Report

There are many similarities between C++ and Ruby, some of them are: Just like C++, in Ruby…

  • As in C++, public, private, and protected works similarly in Ruby also .
  • Inheritance syntax is still only one character, but it’s < instead of : in Ruby.
  • The way ‘namespace’ is used in C++, in the similar way we may put our code into “modules” in ruby.
  • There are many similar operators found in Ruby as found in C++.
  • Though the keyword names have been changed to protect the innocent, exceptions work in a similar manner.

Difference between Ruby and C++.

Sl. No. Ruby C++
1. In Ruby, every variable is just an automatically dereferenced name for some object which means that there is no explicit references in Ruby. Unlike Ruby there is explicit references in C++.
2. Yukihiro Matsumoto, also known as “Matz,” developed Ruby in Japan. Bjarne Stroustrup introduced C++ in 1979 at Bell Labs as an expansion of the C language.
3. First release Ruby 1.0: December 25, 1996 First C++ release in October 1985
4. Objects are strongly but dynamically typed in Ruby. Objects are not strongly typed as that in Ruby.
5. The “constructor” is called initialize instead of the class name. This is not the case in C++.
6. Array and Hash are only two container types. There are many container types in C++.
7. There’s no need of C++ templates. No casting either required. C++ templates are necessary here. Casting is there.
8. It’s self instead of this. It is this instead of self.
9. Iteration is done a bit differently. In Ruby, you don’t use a separate iterator object. Instead you use an iterator method of the container object that takes a block of code to which it passes successive elements. Vectors are required and used in C++ which makes the coding easy.
10. lib, a unit testing, comes standard with Ruby. This is not available with C++.
11. There’s no type conversions in Ruby. Type conversion is necessary in C++.
12. There are some enforced case-conventions. No such case conventions are present in C++ which makes it easy.
13. You can re-open a class anytime and also you can add more methods in Ruby. We cannot do this in C++.
14. Some methods end in a ’?’ or a ’!’ in Ruby. It’s actually part of the method name. No such symbols are required at the end of methods in C++.
15. All methods are always virtual in Ruby. Methods are not virtual in C++.
16. Multithreading is built-in, but as of Ruby 1.8 they are “green threads” as opposed to native threads. Multithreading is not built-in in case of C++.
17. Parentheses used for calling of method are usually optional in Ruby. Parentheses are required in C++ and it is necessary.
18. You don’t directly access member variables—all access to public member variables is via methods. Member variables in C++ can be access directly.
19. Ruby is mainly used to build web applications build servers and data processing, web scraping, and crawling. C++ is mainly used for Operating systems, Mobile applications, Web browsers, Healthcare and research computation, Telecommunications, Databases, Internet of Things (IoT) devices, Game development, Google search engine, etc.
20. Ruby supports operating systems such as Linux, macOS, Solaris, and FreeBSD. C++ supports operating systems such as Apple OS X, Windows 95, 98, 2000, XP, Symbian OS, and BeOS.

Last Updated : 23 Apr, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads