我是C++新手,目前我正在學習考試,在Visual Studio中使用C++進行混亂並嘗試了一下。通常我使用Java。C++新手類的成員函數
我寫了一個簡單的類,看看事情如何以及是否正常工作:
class Point
{
private:
int x;
int y;
public:
Point(int arg1, int arg2)
{
x = arg1;
y = arg2;
}
};
我試圖x和y的2個簡單的成員函數只需雙擊存儲在x和y變量的值。
首先我嘗試這樣做:
void doubleX()
{
x *= 2;
};
void doubleY()
{
y *= 2;
};
然後我嘗試這樣的:
void doubleX()
{
Point::x = 2 * Point::x;
};
void doubleY()
{
Point::y = 2 * Point2::y;
};
兩者都放在裏面的類定義。
雖然通過建設的VisualStudio它alwas給了我這個錯誤警告: 「錯誤C3867‘點:: doubleX’:非標準語法;使用‘&’創建成員指針」
想招惹周圍還有地址指針,但是......我真的沒有線索。 我想我知道指針基本上是如何工作的,但我不知道如何在我的案例中使用它。
對此問題的任何快速解決方案和解釋?
在此先感謝!
編輯:這裏是我的全部代碼,問題出在主現在
#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();
}
什麼是'Point2'?爲了引用類成員,你可以使用'this->'或者把它放在外面(就像在Java中一樣) – UnholySheep
你必須聲明你的成員函數_在類定義中 - 從你粘貼的東西中,它一點也不清楚你做到了。 – Useless
您不可能從該代碼中獲取該錯誤。你應該開始[這裏](https://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list)。 – molbdnilo