我想学习C ++。我的背景是作为Javascript开发人员。
我的问题是将C ++中的自定义类对象打印到控制台,以便我可以开始学习。
在Javascript中,我可以创建一个类,对其进行初始化,然后进行console.log(JSON.stringify(classObject))等。
我正在尝试用C ++编写此代码,但是收到一个...
转换错误。
/usr/include/c++/7/ostream:574:5: note: candidate: template<class _Traits> std::basic_ostream<char, _Traits>& std::operator<<(std::basic_ostream<char, _Traits>&, const unsigned char*)
operator<<(basic_ostream<char, _Traits>& __out, const unsigned char* __s)
^~~~~~~~
代码
#include <iostream>
#include <queue>
using namespace std;
class Ball {
public:
int posX;
int posY;
int speedX;
int speedY;
int size;
// Parameterized Constructor
Ball(int pX, int pY, int sX, int sY, int s){
posX = pX;
posY = pY;
speedX = sX;
speedY = sY;
size = s;
}
};
int main(){
queue<Ball> objQueue;
Ball obj1(10, 10, 5, 5, 150);
Ball obj2(1490, 740, 5, 5, 150);
Ball obj3(10, 740, 5, 5, 150);
Ball obj4(1490, 10, 5, 5, 150);
objQueue.push( obj1 );
objQueue.push( obj2 );
objQueue.push( obj3 );
objQueue.push( obj4 );
// TEST
while (!objQueue.empty()){
std::cout << objQueue.front();
objQueue.pop();
}
return 0;
}