struct CLICKABLE
{
int x;
int y;
BITMAP* alt;
BITMAP* bitmap;
CLICKABLE()
{
alt=0;
}
};
CLICKABLE input={1,2,0,0};
Run Code Online (Sandbox Code Playgroud)
此代码给出了以下错误:
无法从大括号括起来的初始化列表转换
有人可以解释一下为什么编译器会给我这个错误,以及我如何解决它?我还在学习这门语言.
这段代码无论我怎么努力我都无法理解......
#include <iostream>
using namespace std;
int main()
{
int ***mat;
mat = new int**[4];
for(int h = 0; h < 4; h++) {
mat[h] = new int*[4];
}
for (int i = 0; i < 4; i++) {
delete[] mat[i];
delete[] mat;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这不应该mat = new int**[4];意味着mat会指向一个int**数组,所以当我想使用这个数组的成员时我应该这样做*mat[0]吗?
我不明白这一行mat[h] = new int*[4];.
void sort_this(std::map<BITMAP*,MAPS>::iterator start,std::map<BITMAP*,MAPS>::iterator endd)
{
for(auto itt=start;itt!=endd;itt++)
{
for(auto it=start;it!=endd;it++)
{
if(itt->second.type > it->second.type)
{
std::swap(*it,*itt);
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
我需要调换*it和*itt,它给这个错误.
files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\move.h|177|
error: assignment of read-only reference '__a'|
c:\program files\codeblocks\mingw\bin\..\lib\gcc\mingw32\4.7.1\include\c++\bits\move.h|178|
error: assignment of read-only reference '__b'|
Run Code Online (Sandbox Code Playgroud)
编辑:此功能的目的是安排地图的元素.根据second.type