You are correct, but made a really bad typo.. Declare a pointer like this
Code:
AnalogChannel *turretPosition = new AnalogChannel(1) // declare a pointer to an Analog Channel and allocate a channel
You wrote that a new variable equals itself times a new analog channel.. Which makes no sense..
The distinction is this, the -> operator accessed a member of an object pointed to by your variable. The dot operator accesses a member of an actual object variable
Code:
ptr_to_object->Drive();
object.Drive();
Nothing in code is arbitrary. You just have to read up on the language.