Java の世界での長い冒険の後、C++ に戻ってきて、C++ がポインターを使用する方法の概念/構文を再把握しています。
いくつかの例です。
Javaで
public void MyFunc(MyClass class)
{
class.DoSomething;
}
と同じです
void MyFunc (MyClass* class)
{
class->DoSomething;
}
と
public MyClass GetMyClass()
{
return class;
}
と同じです(それを見ると、ここで返されるものをポインターに格納する必要があるため、同じではないことがわかります...)
MyClasss* GetMyClass()
{
return (&class); // could you say here "return <-MyClass"
}
代わりに、これは同じかもしれません (これは、「&MyClass」にある MyClass のオブジェクトを返すように思われるため、このオブジェクトが返される場所からこの場所で直接編集できます)
MyClasss GetMyClass()
{
return (&class);
}
-> を使用して、ポインターが指すアドレスに格納されているオブジェクトにアクセスすることもできますが、 <- を使用してアドレスを格納できますか?
最後に、ポイントは何ですか
void MyFunc(MyClass1 &class1, MyClass2 &class2)
対
void MyFunc(MyClass1* class1, MyClass* class2)
例2では、使用したいデータのアドレスを渡しているのに対し、最初はアドレスのデータストアに渡していますか?