Use keyword nullptr as null pointer constant
Since C++11, nullptr provides a typesafe pointer value representing an empty (null) pointer, resolving ambiguous situations unlike the existing implementation dependent null pointer constant NULL. Therefore, NULL instances should be replaced it by nullptr