C++ things / topics that appear in Geant4 code that are the most difficult ones to learn

Hi, What are the C++ things / topics that appear in Geant4 code that are the most difficult ones to learn?; Are “pointers” one of those C++ things / topics?

Geant4 Version: 11.2.1
Operating System: Windows 10
Compiler/Version: Visual Studio 2022
CMake Version: 3.29.0-rc2


What do you find most difficult? Every new person is going to have a different answer to that.

Okay, thanks for your reply. For me, “pointers” would be one of the hardest C++ topics to learn. I have seen “pointers“ in several Geant4 toolkit codes, but, I still don´t fully understand “pointers”. I think I’m going to have to learn “pointers“ and other C++ things / topics that I don´t understand well with a course or tutorial

There are several excellent courses on both C++ and object oriented programming in general. You can do very good OO even in Python, but not unless you understand the conceptual basis.

Ok, thank you for the reply. So, I´m going to have to understand / brush up on the concepts first, and then I’m going to have to practice by writing C++ programs

Dear @alfredo10110

There are many courses (books, videotutorials, etc) of C++ and Object Oriented programming. Personally, I started with the book “C++ in 21 days”, but it is a bit oldie.

There will be an course on basic C++ at CERN 9-13 March, in case it is of your interest

And the recordings of many courses are publicly available in the CERN CDS,

Best,

Alvaro

Ok, Thank you for all the information. It has been useful. I would like to attend the basic C++ course you mentioned, but, I´m not sure if I will be able to attend the basic C++ course because of tasks / work I have to do at home.

What level of English language is required to attend the one week basic C++ course at CERN?, Intermediate? Advanced?. How much does it cost to attend the course?. If I decide to attend the basic C++ course at CERN, Is accommodation / personal room included at CERN?. I’m going to take a look at the videos related to C++ and Geant4 that you shared.

If I am unable to attend the basic C++ course, I will watch the basic C++ course recordings in the CERN CDS.

I would also like to add that in year 2024 I was learning basic C++ with the help of around 100 Youtube videos (each video with an approximate duration of 5 minutes) (in Spanish language) (this course lasted approximately one and a half months); I think it was a very good basic C++ course, both theorical and practical.