我有一个问题,我试图确定对象的引用是否有效.但它似乎正在回归奇怪的结果.
procedure TForm1.Button1Click(Sender: TObject);
var form1 : TForm;
ref2 : TControl;
begin
form1 := TForm.Create(nil);
form1.Name := 'CustomForm';
form1.Parent := self; //Main Form
form1.Show;
ref2 := form1;
showmessage(ref2.ClassName+' - '+ref2.Name+' - '+BoolToStr(ref2.visible,true));
freeandnil(form1);
showmessage(ref2.ClassName+' - '+ref2.Name+' - '+BoolToStr(ref2.visible,true));
end;
Run Code Online (Sandbox Code Playgroud)
第一个showmessage返回 - "TForm - CustomForm - True"(就像我期望的那样).
第二个showmessage回归 - "TForm - - False".我实际上希望某种访问违规,然后我可以陷阱并知道该引用无效.
在我的应用程序中,我需要在创建它们时编译随机TForm后代的列表,然后稍后检查它们是否已经消失(或者不可见).不幸的是,这是一个基于插件的系统,所以我可以改变所有这些表格来发布"我已完成消息".
像这样的代码是否可以安全使用(假设我实际上正在检查访问违规)?有没有人有任何想法发生了什么.
谢谢
有没有办法监控每个应用程序使用多少数据(互联网)?
如果我无法监控应用程序是否有办法获取所有互联网请求信息?(获取数据传递,网址等)
(我想在我为iphone开发的应用程序中使用此信息)
自从我使用MySQL多年以来,我有点羞于问这个问题,但是哦.
我有一个有两个字段的表,a和b.我将在其上运行以下查询:
SELECT * FROM ... WHERE A = 1;SELECT * FROM ... WHERE B = 1;SELECT * FROM ... WHERE A = 1 AND B = 1;从性能的角度来看,对于至少一个查询,至少有以下一种索引配置较慢?如果是,请详细说明.
ALTER TABLE ... ADD INDEX (a); ALTER TABLE ... ADD INDEX (b);ALTER TABLE ... ADD INDEX (a, b);ALTER TABLE ... ADD INDEX (a); ALTER TABLE ... ADD INDEX (b); ALTER TABLE ... ADD INDEX (a, b);谢谢(请注意,我们正在讨论非唯一索引)
好吧,我有一个字符串,我想删除由\分割的最后一个字
例如:
string name ="kak\kdk\dd\ddew\cxz\"
Run Code Online (Sandbox Code Playgroud)
现在我想删除最后一个单词,以便我获得名称的新值
name ="kak\kdk\dd\ddew \"
是否有捷径可寻
谢谢
在bash中,我想使用该命令find查找在某个位置包含40到70之间的数字的文件,如c43_data.txt.如何实现此过滤器find?
我试过了file . -name "c**_data.txt" | grep 4,但这不是很好.
谢谢
考虑班级:
MyClass {
int varA;
int varB;
};
Run Code Online (Sandbox Code Playgroud)
我有一个指向MyClass对象的指针向量:
std::vector<MyClass*> Vec;
Run Code Online (Sandbox Code Playgroud)
我想使用相同的排序函数根据varA或varB对向量进行排序,即:
bool SortFunction(const MyClass* obj1, const MyClass* obj2, const short type) {
if( type == VARA_ID )
return obj1->varA < obj2->varA;
else if( type == VARB_ID )
return obj1->varB < obj2->varB;
}
Run Code Online (Sandbox Code Playgroud)
AFAICT这是不可能的.如果不使用外部库,最优雅的方法是什么?
我正在使用Eclipse IDE for C/C++ Developer- Build id:20090920-1017
我们知道eclipse for C++为C/C++开发人员提供了内置的"编码辅助工具":
1)代码完成 - 自动完成/填充类或结构的方法名称或字段名称.自动填充类结构,for loops等
2)模板您可以为经常使用的代码段创建和保存模板,这些代码段将根据范围插入.内容辅助功能还可以快速访问代码模板.
3)C/C++样式简介:K&R,GNU等指定缩进,括号和其他样式问题.
您是否有为C++授权命名约定创建自己的C++ Style配置文件的经验?Eclipse配置文件是否可以有效地用于自动强制执行代码一致性?
(代码审查仍然是必需的,但更喜欢使用工具来获得命名约定,缩写等一开始)
谢谢,Jak
我目前有这个:
Builder yesandno = new AlertDialog.Builder(this);
yesandno.setTitle("QuickResponse");
yesandno.setMessage(message);
yesandno.setPositiveButton("YES", null);
yesandno.setNegativeButton("NO", null);
yesandno.show();
Run Code Online (Sandbox Code Playgroud)
如何通过设置一个事件监听器来捕获用户单击是或否?
函数的返回值通常存储在堆栈或寄存器中.但对于大型结构,它必须在堆栈上.在这个代码的真实编译器中必须进行多少复制?还是优化了?
例如:
struct Data {
unsigned values[256];
};
Data createData()
{
Data data;
// initialize data values...
return data;
}
Run Code Online (Sandbox Code Playgroud)
(假设函数无法内联..)
c compiler-theory abi calling-convention compiler-optimization