我只是想知道如何限制C#中字符串的长度.
string foo = "1234567890";
Run Code Online (Sandbox Code Playgroud)
说我们有.我怎么能限制foo说5个字符?
说我要做这样的事情:
class blah
{
public:
bool exampleVar;
};
blah exampleArray[4];
exampleArray[1].exampleVar = true;
Run Code Online (Sandbox Code Playgroud)
在exampleArray中,现在有3个未设置的exampleVar实例,没有我设置它们的默认值是什么?
有没有办法确保创建时的struct对象始终是指针?
例如:
typedef struct
{
int foo;
} blah;
blah a; // error
blah* b; // ok
Run Code Online (Sandbox Code Playgroud) 我正在研究一些SDL的东西,在尝试设置加载的BMP的位置时遇到了一些麻烦.
这是代码.
while(event.type != SDL_QUIT) //The game loop that does everything
{
SDL_Rect *location;
location = SDL_Rect(600,400,0,0);
SDL_PollEvent(&event); //This "polls" the event
//Drawing stuff goes here
SDL_BlitSurface(zombie, NULL, buffer, &location);
SDL_Flip(buffer); //Draw
}
Run Code Online (Sandbox Code Playgroud)
它不会编译.我究竟做错了什么?
我一直在使用SFML 1.6库,我想知道.
如何旋转精灵以便它总是转向鼠标在屏幕上的位置?
谢谢.
(首选SFML特定代码)
我已经仔细研究了这个至少一个小时,我仍然无法找出问题所在.
#include <stdio.h>
typedef struct
{
int Level;
char* Name;
} Base;
Base baseStruct;
int main(int argc, char *argv[])
{
scanf("%s", baseStruct.Name);
scanf("%d", &baseStruct.Level);
printf("%s :: Level %d\n", baseStruct.Name, baseStruct.Level);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
会发生什么,我去输入"Name"字符串,然后当我输入并输入整数时程序崩溃.到底是怎么回事?
所以我最近一直在使用SFML,我想知道如何"添加"到sf :: String.
例如:
sf::String exampleText;
exampleText.SetText("I say: ");
exampleText += "Blah";
Run Code Online (Sandbox Code Playgroud)
结果:"我说:Blah"
我如何循环遍历多维数组?说我们有这样的事情:
class blah
{
public:
blah();
bool foo;
};
blah::blah()
{
foo = true;
}
blah testArray[1][2];
testArray[1][0].foo = false;
Run Code Online (Sandbox Code Playgroud)
我将如何循环testArray查找哪一个foo是假的?
因此,正如我们所有人都希望的那样,在面向对象编程时,当你需要以某种方式访问另一个类的方法中的类的实例时,你转向通过参数传递该实例.
我很好奇,当涉及传递一个Object或指向该对象的指针时,在良好实践/不易破坏事物方面有什么不同?
class A // blah blah generic abstracty whatever
{
public:
A();
~A();
};
class B
{
public:
B();
~B();
private:
A* a[8];
};
B::B()
{
for(int x = 0; x < 8; x++)
{
a[x] = new A;
}
}
B::~B()
{
for(int x = 0; x < 8; x++)
{
delete a[x];
}
}
Run Code Online (Sandbox Code Playgroud)
我只是好奇上面的代码是否会自行泄露.是否有任何可能泄漏的情况(除非我没有正确地调用删除)?
谢谢.
在C和C++中释放内存时,我只需要内存地址还是需要任何特定的变量?
所以如果我要做的事情如下:
int* test()
{
int* x = new int(5);
return x;
}
int main(int argc, char** argv)
{
int* y = test();
delete y;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这会导致内存泄漏吗?谢谢!
由于某些奇怪的原因,我的 SFML 程序不会呈现任何内容,直到我将鼠标悬停在它上面,或按下某个键或执行任何符合事件资格的操作。
我该如何解决?
我怎么只返回数组的一个维度,而忽略另一个维度呢?
如:
int map[4][8];
int MapManager::getMapX(int x)
{
return map[x];
}
Run Code Online (Sandbox Code Playgroud)