I'm new with C++ and I'm currently studying for exams, messing around with C++ in VisualStudio and experimenting a bit. Usuall I work with Java.
I wrote a simple class to see how and if things work:
class Point
{
private:
    int x;
    int y;
public:
    Point(int arg1, int arg2)
    {
        x = arg1;
        y = arg2;
    }
};
I tried 2 simple member functions for x and y to just double the value stored in the x and y variables.
First I tried this:
void doubleX()
{
    x *= 2;
};
void doubleY()
{
    y *= 2;
};
Then I tried this:
void doubleX()
{
    Point::x = 2 * Point::x;
};
void doubleY()
{
    Point::y = 2 * Point2::y;
};
Both are put inside the class definition.
While building through VisualStudio it alwas gives me this error warning: "Error C3867 'Point::doubleX': non-standard syntax; use '&' to create a pointer to member"
Tried to mess around with adress pointers as well but... I don't really have a clue. I think I know how pointers basically work, but I have no idea how to use it for my case here.
Any quick solution and explanation to this problem?
Thanks in advance!
EDIT: here's my whole code, problem is in the main now
    #include "stdafx.h"
#include <iostream>
using namespace std;
class Point
{
public:
    int x;
    int y;
    Point(int arg1, int arg2)
    {
        x = arg1;
        y = arg2;
    }
    void doubleX()
    {
        x *= 2;
    };
    void doubleY()
    {
        y *= 2;
    };
};
int main()
{
    Point p(1,1);
    int &x = p.x;
    int &y = p.y;
    cout << x << "|" << y;
    p.doubleX; p.doubleY; //error message here
    cout << x << "|" << y;
    cin.get();
}
 
     
     
     
    