我使用https://puphpet.com构建了我的配置,并成功部署了我的虚拟机vagrant up.现在我正在尝试自定义它,并在文档中看到有两个文件夹在VM中运行脚本:puphpet/files/exec-always和puphpet/files/exec-once.
我写了几个测试BASH脚本并将它们放在那里,但我可以"应用"这些的唯一方法是我完全销毁VM并从头开始重新配置它.这需要大量的时间.
测试和调试这些脚本的正确方法是什么?
我在iPhone上使用ASIHTPTRequest从Web服务器中获取一些对象.我正在做以下事情:
这可行,但似乎是一些应该更简单的事情(我认为).
有没有办法让这个过程更有效率?
在某些时候我也需要做相反的事情(在iPhone上生成XML并将其发送到运行PHP的Web服务器)但还没有到达那里......我不是特别喜欢XML并且会很乐意如果有任何可以更好地适应这种情况的更改格式.
任何帮助是极大的赞赏!
我在我的应用程序中遇到随机崩溃,直到我将其缩小到特定方法.在那个方法中,我期待NSString一个参数.这NSString有时可以是零,在这种情况下,该方法结束并且不会造成伤害.
当我运行我的方法的参数时,NSLog(@"%@", myString)我发现我得到其中一个:
前两个是我的方法预期和处理.第三个,<null>,崩溃了我的应用程序-[NSNull length]: unrecognized selector sent to instance 0x1b2ace8.
我通过检查nil或找到解决问题的方法isKindOfClass,但我的问题是(null)和<null>之间的区别是什么?.
我有这个代码:
#include <cstdio>
#include <string>
using namespace std;
const string & func()
{
static string staticString = "one";
printf("%s\n", staticString.c_str());
return staticString;
}
int main( int argc, char ** argv )
{
string firstString = func();
firstString = "two";
printf("%s\n", firstString.c_str());
func();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
输出是
one
two
one
Run Code Online (Sandbox Code Playgroud)
困惑我的部分是,如果我const从func()输出中删除是完全相同的.我期望它是:
one
two
two
Run Code Online (Sandbox Code Playgroud)
如果我从中获取字符串引用func()(当它没有const关键字时),为什么在我func()再次调用时它被重置?
我有以下代码,但编译器返回:Invalid use of non-static data member 'columns'定义数组时.
int columns = 10;
int rows = 13;
char characters[columns * rows];
Run Code Online (Sandbox Code Playgroud)
如果我将其更改为:
#define COLS 10;
#define ROWS 13;
int columns = COLS;
int rows = ROWS;
char characters[COLS * ROWS];
Run Code Online (Sandbox Code Playgroud)
我得到Expected member name or ';' after declaration specifiers.
这只有在我通过手动输入数字来声明我的数组时才有效:
char characters[10 * 13];
Run Code Online (Sandbox Code Playgroud)
......但当然这是多余的; 我不想在两个地方定义我的cols和行.我的印象是预处理器指令是编译器的简单搜索/替换,所以我不明白为什么char characters[COLS * ROWS]不起作用,这样做char characters[10 * 13]
处理这个问题的正确方法是什么?
PS:我正在使用Xcode 5.1.1和一个OpenFrameworks项目.