c++ ->
struct car {
	int year
  	int vin; 
}
struct car myCar;
p_myCar = &myCar;
myCar.year = 1995;
// '->' allows you to use the '.' with pointers
p_myCar->vin = 1234567;c++ ->
struct car {
	int year
  	int vin; 
}
struct car myCar;
p_myCar = &myCar;
myCar.year = 1995;
// '->' allows you to use the '.' with pointers
p_myCar->vin = 1234567;arrow operator c++
/* 
 the arrow operator is used for accessing members (fields or methods)
 of a class or struct
 
 it dereferences the type, and then performs an element selection (dot) operation
*/
#include <iostream>
using std::cout;
class Entity {
public:
	const char* name = nullptr;
private:
	int x, y;
public:
	Entity(int x, int y, const char* name)
		: x(x), y(y), name(name) {
		printEntityPosition(this); // "this" just means a pointer to the current Entity
	}
	int getX() { return x; }
	int getY() { return y; }
	friend void printEntityPosition(Entity* e);
};
// accessing methods using arrow
void printEntityPosition(Entity* e) {
	cout << "Position: " << e->getX() << ", " << e->getY() << "\n";
}
int main() {
	/* ----- ARROW ----- */
	Entity* pointer = new Entity(1, 1, "Fred");
	//printEntityPosition(pointer); redacted for redundancy (say that 5 times fast)
	
  	cout << (*pointer).name << "\n"; // behind the scenes
	cout << pointer->name << "\n"; // print the name (with an arrow)
	/* ----- NOT ARROW ----- */
	Entity not_a_pointer(2, 2, "Derf");
	//printEntityPosition(¬_a_pointer); & to convert to pointer
	cout << not_a_pointer.name << "\n"; // print the name (with a dot)
	/* ----- LITERALLY NEITHER ----- */
	std::cin.get(); // wait for input
	return 0; // exit program
}Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us
