所以我刚刚遵循了为发布模式启用调试符号的建议,并在启用调试符号后,禁用优化并发现如果符号符合发布模式,断点确实有效,我发现自己在想...
有什么建议?
假设我有这个代码......
class GraphFactory : public QObject
{
private:
QMap<QString, IGraphCreator*> factory_;
public:
virtual ~GraphFactory();
};
GraphFactory::~GraphFactory()
{
// Free up the graph creators
QMap<QString, IGraphCreator*>::iterator itr;
for (itr = factory_.begin(); itr != factory_.end(); itr++)
{
IGraphCreator * creator = itr.value();
delete creator;
creator = NULL;
}
}
Run Code Online (Sandbox Code Playgroud)
QMap工厂何时被销毁?在调用析构函数之前,还是在析构函数期间?(我知道当GraphFactory的一个实例超出范围时会调用析构函数.但是什么时候非指针成员被销毁?)
编辑:当到达析构函数时,我得到了factory_ map的无效值.断点显示该值不会篡改QMap中存储的值.
我正在使用json_encode将PHP中的查找表转换为JavaScript:
AbilitiesLookup Object
(
[abilities:private] => Array
(
[1] => Ability_MeleeAttack Object
(
[abilityid:protected] =>
[range:protected] => 1
[name:protected] => MeleeAttack
[ability_identifier:protected] => MeleeAttack
[aoe_row:protected] => 1
[aoe_col:protected] => 1
[aoe_shape:protected] =>
[cooldown:protected] => 0
[focusCost:protected] => 0
[possibleFactions:protected] => 2
[abilityDesc:protected] => Basic Attack
)
.....snipped...
Run Code Online (Sandbox Code Playgroud)
在JSON中,它是:
{"1":{"name":"MeleeAttack","fof":"2","range":"1","aoe":[null,"1","1"],"fp":"0","image":"dummy.jpg"},....
Run Code Online (Sandbox Code Playgroud)
问题是我得到一个JS对象,而不是一个数组,标识符是一个数字.我看到了解决这个问题的两种方法 - 要么找到一种方法来使用数字访问JSON(我不知道怎么做),要么让json_encode(或其他一些自定义编码函数)可以提供JavaScript关联数组.
(是的,我的JavaScript部门很缺乏).
注意:JSON输出与数组不匹配 - 这是因为我在下标中为每个元素执行手动json编码,然后将其推送到数组(以索引作为键),然后在其上使用json_encode.要清楚,数字不是顺序的,因为它是一个关联数组(这就是JSON输出不是数组的原因).
我读过关于重构的内容,并且可能在我知道它之前做过,但是我并不是真的知道它实际上已经完成了它实际意味着什么.
刚开始使用C#(使用VS2008) - 我是一位经验丰富的Java,C++,VC++,VB程序员.
我从codescales.com下载了一个程序集(我猜); 这是一个dll.
在我的(新)C#项目中,我添加了这个dll作为参考 - 通过浏览它.我有intellisense为它工作,并编写了一个简单的例子来测试它,但每次我点击VS"调试",我得到以下异常.我是否需要"注册"或对此下载的DLL执行某些操作才能在我的项目中正确使用它?(VS似乎在构建时自动将其复制到输出目录.)
在此先感谢,AJ
System.IO.FileNotFoundException未处理Message ="无法加载文件或程序集'CodeScales.Http,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null'或其依赖项之一.系统找不到指定的文件."
来源= "ocrTest1"
FileName ="CodeScales.Http,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null"FusionLog ="===预绑定状态信息===\r \nLOG:User = CAPTURESDK-VM\XXXXX\r \nLOG:DisplayName = CodeScales.Http,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null \n(完全指定)\ r \nLOG:Appbase = file:/// C:/ Documents and Settings/XXXXX/My Documents/Visual Studio 2008/Projects/ocrTest1/ocrTest1/bin/Debug /\r \nLOG:Initial PrivatePath = NULL\r \n调用程序集:ocrTest1,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null.\ r \n ===\r \nLOG:此绑定在默认加载上下文中启动.\ r \nLOG:找不到应用程序配置文件.\ r \nLOG:使用C:\ WINDOWS\Microsoft.NET\Framework\v2中的计算机配置文件..0.50727\CONFIG\machine.config中\ r \n日志:此时策略未应用于引用(私有,自定义,部分或基于位置的程序集绑定).\ r \nLOG:尝试下载新的URL文件:/// C:/ Documents and …
我开始使用MVC3进行编程而不了解任何领域.随着应用程序变得越来越大,我想使用区域来组织我的代码,但我的大多数控制器都不在任何区域内.
如何快速将现有控制器移动到某个区域?
我们正在为我们的项目开发一个"插件"架构,在那里扩展软件的功能,客户端可以编写自己的控制器并将其包含在项目中.(插件将根据客户端将添加到模式中的表生成不同的输出).
通过控制器动作中的动作来访问插件,比如说 /reports/get/?type=spending
因此,在这种情况下,操作必须将控制器放置在"插件"区域内并调用索引操作(例如areas/plugin/spending/index).如何在操作内部调用此操作/reports/get/?type=spending并获取其输出?
假设我在PHP中有一个看起来像这样的数组
array
(
array(0)
(
array(0)
(
.
.
.
)
.
.
array(10)
(
..
)
)
.
.
.
array(n)
(
array(0)
(
)
)
)
Run Code Online (Sandbox Code Playgroud)
而且我需要将这个多维数组的所有叶子元素都变成一个线性数组,我应该如何在不借助递归的情况下这样做呢?
function getChild($element)
{
foreach($element as $e)
{
if (is_array($e)
{
getChild($e);
}
}
}
Run Code Online (Sandbox Code Playgroud)
注意:上面的代码片段,可怕的未完成
更新:数组的示例
Array
(
[0] => Array
(
[0] => Array
(
[0] => Seller Object
(
[credits:private] => 5000000
[balance:private] => 4998970
[queueid:private] => 0
[sellerid:private] => 2
[dateTime:private] => 2009-07-25 17:53:10
)
)
)
Run Code Online (Sandbox Code Playgroud)
...剪断. …
这里的问题是我有一个x和y大小的显示窗口,我需要在窗口内显示一个没有任何滚动的图像,并保持4:3的宽高比.我有以下代码片段:
// Lock the current height, calculate new width of the canvas and scale the viewport.
// get width of the movie canvas
qreal width = canvas_->width();
// Find the height of the video
qreal height = (width/4.0) * 3;
// find original width and height for video to calculate scaling factor
qreal videoWidth = movieData_->GetWidth();
qreal videoHeight = movieData_->GetHeight();
// calculate scaling factor
qreal scaleFactorWidth = width/videoWidth;
qreal scaleFactorHeight = height/videoHeight;
Run Code Online (Sandbox Code Playgroud)
当然,通过使用高度或宽度作为"锚点",新图像将以这种方式或其他方式引起滚动(假设原始图像首先大于窗口).如何找到适合预定尺寸的宽高比4:3的尺寸?
编辑 我需要传递x和y的比例因子来进行缩放
canvas_->scale(scaleFactorWidth, scaleFactorHeight);
Run Code Online (Sandbox Code Playgroud) 这是 IFC 定义的片段:
#20=IFCORGANIZATION('','Anon Consulting','',$,$);
Run Code Online (Sandbox Code Playgroud)
字符的含义是什么$?目前,我有根据的猜测是它们代表“null”。我可以在哪里验证这一点?
asp.net-mvc ×2
c# ×2
c++ ×2
php ×2
arrays ×1
asp.net ×1
aspect-ratio ×1
debugging ×1
destructor ×1
ifc ×1
image ×1
javascript ×1
json ×1
math ×1
qt4 ×1
refactoring ×1
release-mode ×1