Coordinate.h
#include <iostream>
using namespace std;
class Coordinate{
public:
Coordinate(int x=0,int y=0){
X=x;
Y=y;
}
void pf(){
cout<<X<<" "<<Y<<endl;
}
private:
int X;
int Y;
};test.cpp
#include "Coordinate.h"
int main(){
Coordinate c = new Coordinate(7,11);
c.pf();
}我做个模版练习时出的错,建test.cpp测试,也报错
invalid conversion from ‘Coordinate*’ to ‘int’ [-fpermissive]
Coordinate c = new Coordinate(7,11);
报错位置是test.cpp的第四行
Coordinate c = new Coordinate(7,11);
我的构造函数应该没写错吧,为什么说“无效的Coordinate指针指向int”?
求大神指点迷津
----------------------------------------
找到问题了
学java时留下的习惯
杯具了……
顺带问一下
函数调用里能不能内嵌构造函数
比如:
void pf(Coordinate c){
cout<<c.X<<" "<<c.Y<<endl;
}调用时标准写法是
Coordinate c1(4,9); pf(c1);
java中可以合成一句:pf(new Coordinate(4,9));
c++中用这种写法就报错。
请教下大神,c++中有没有类似的语法,应该怎么用?
xiele
onemoo
何方神圣
xiele
随时随地看视频慕课网APP
相关分类