问题列表 - 第20180页

在C++中处理共同依赖类的最佳方法是什么?

假设我有一个类foo,类bar的对象作为成员

class foo
{
    bar m_bar;
};
Run Code Online (Sandbox Code Playgroud)

现在假设酒吧需​​要跟踪拥有它的foo

class bar
{
    foo * m_pfoo;
}
Run Code Online (Sandbox Code Playgroud)

这两个类相互引用,没有前向声明,不会编译.因此,在foo声明之前添加此行可以解决该问题

class bar;
Run Code Online (Sandbox Code Playgroud)

现在,问题是 - 在编写头文件时,每个头都依赖于另一个:foo.h需要bar.h中的定义,反之亦然.处理这个问题的正确方法是什么?

c++ header

10
推荐指数
1
解决办法
1万
查看次数

为javascript编写一个真正包容的随机方法

Javascript的MATH对象有一个随机方法,从set [0,1)0返回,包括1,exclusive.有没有办法返回一个包含1的真正随机方法.

例如

var rand = MATH.random()*2;

if(rand > 1)
{
   rand = MATH.floor(rand);
}

return rand; 
Run Code Online (Sandbox Code Playgroud)

虽然这总是从集合[0,1]返回一个数字,但它并不是真正随机的.

javascript random math

15
推荐指数
3
解决办法
5700
查看次数

BDD/TDD嘲弄数据的方法很棘手

所以一位同事和我正在进行一场相当激烈的辩论.我们正在开始一个新项目,我们正在尝试使用BDD.我们都是第一次参加,并不完全了解应该使用哪些做法.我们已经编写了一些规范,现在我们正在实现代码.由于存在大量数据库交互,因此事情变得相当棘手.我们被困在如何模拟我们的数据上.我们要进行的方法需要我们模拟我们的方法而不是我们的数据.如果我在代码中向您展示,这是最简单的...

public static void AssignLeadToDistributor(int leadId, int distributorId)
{
    Lead lead = GetById(leadId);
    lead.DistributorId = distributorId;
    Save(lead);
}
Run Code Online (Sandbox Code Playgroud)

基本上,我们必须覆盖GetById()和Save()以返回模拟数据,以便我们对此进行测试.这样做似乎更有意义:

public static void AssignLeadToDistributor(Lead lead, Distributor distributor)
{
   lead.DistributorId = distirbutor.Id;
}
Run Code Online (Sandbox Code Playgroud)

然后我们可以模拟我们的对象.

显然,第二种方法使测试更容易.但是,争论的焦点是我们不希望在前端代码上获取新的前导和分发器对象,因为只传递对象的id会更容易.减少我们前端的实际代码.

希望我解释得那么好.

你们有什么感想?哪种方式更有意义?

tdd bdd unit-testing specifications mocking

6
推荐指数
2
解决办法
465
查看次数

可以通过sdk实例化telephony.Phone对象吗?

我正在尝试获取一个电话对象,以便我可以在我的应用程序中呼叫和召开两个号码.

我试过使用静态PhoneFactory.makeDefaultPhones((Context)this)但没有运气.

String phoneFactoryName = "com.android.internal.telephony.PhoneFactory";
String phoneName = "com.android.internal.telephony.Phone";
Class phoneFactoryClass = Class.forName(phoneFactoryName);
Class phoneClass = Class.forName(phoneName);
Method getDefaultPhone = phoneFactoryClass.getMethod("getDefaultPhone");
Object phoneObject = getDefaultPhone.invoke(null);
Run Code Online (Sandbox Code Playgroud)

错误 - 由java.lang.RuntimeException引起:必须从Looper线程调用PhoneFactory.getDefaultPhone

android

15
推荐指数
2
解决办法
2万
查看次数

在.Net 中,如何使上下文菜单项的高度不固定(即缩放到特定项目的大小)?

请参阅下面的两张图片。我不希望菜单中的每个项目都是最大的高度。它的大小应该适合内容。我尝试过许多属性,但无法阻止这种行为。是否可以?

所需高度
(来源:blakerobertson.com

适合所有人的固定高度!
(来源:blakerobertson.com

.net contextmenu menuitem winforms

5
推荐指数
1
解决办法
3084
查看次数

不使用CRON安排脚本

我知道有很多关于使用CRON运行php文件的帖子.但是,在共享托管的世界中,以及用户的易于设置,我不想让它搞乱.

我在网上发现了另一个与套接字有关的解决方案.只是想让每个人都接受这个,并告诉我这是一个好主意还是坏主意.听起来很有效.

思考?

//Open socket connection to cron.php
$socketcon = fsockopen($_SERVER['HTTP_HOST'],80,$errorno,$errorstr,10);
if($socketcon) {
$socketdata = "GET /cron.php HTTP 1.1\r\nHost: ".$_SERVER['HTTP_HOST']."\r\nConnection: Close\r\n\r\n";
fwrite($socketcon,$socketdata);
//Normally you would get all the data back with fgets and wait until $socketcon reaches feof.
//In this case, we just do this:
fclose($socketcon);
} else {
//something went wrong. Put your error handler here.
}
Run Code Online (Sandbox Code Playgroud)

cron.php:

//This script does all the work.
sleep(200);
//To prove that this works we will create an empty file here, after the …
Run Code Online (Sandbox Code Playgroud)

php scripting cron command-line-interface

15
推荐指数
2
解决办法
1万
查看次数

UIWebView是否在请求标头中发送与移动Safari相同的用户代理?

对不起,我会亲自测试一下,但我现在没有我的mac.在UIWebView内部发出的Web请求是否发送了与移动Safari发出的Web请求相同的用户代理信息?

iphone user-agent uiwebview

31
推荐指数
2
解决办法
3万
查看次数

包含多个索引的列表

给定一个通用List我需要某种索引(在数据库意义上),这将允许我快速检索.这个索引的键不是唯一的,所以我不能使用字典.这就是我的想法:给定一个类Foo {P1,P2,P3}可能有这样的数据

{ "aaa", 111, "yes" }
{ "aaa", 112, "no" }
{ "bbb", 111, "no" }
{ "bbb", 220, "yes" }
{ "bbb", 220, "no" }
{ "ccc", 300, "yes" }
Run Code Online (Sandbox Code Playgroud)

我需要快速访问P1为"bbb"(第3,第4和第5)的所有记录或P2为111(第1和第3)的所有记录.我可以使用排序列表,但如果我需要多种排序/索引方法,我最终会得到重复列表.

.NET框架中是否有内置的东西,或者可能是OS库,它会做这样的事情?谢谢.

PS我提到"排序列表"的想法是排序列表将更快地返回/找到项目.我不需要列表必须排序; 我只是在寻找快速检索/发现.

.net c# indexing collections list

13
推荐指数
3
解决办法
1万
查看次数

TrimEnd for Java?

在将C#应用程序转换为Java的过程中,我遇到了String的TrimEnd方法.是否有等效的Java实现?我好像找不到一个.

我宁愿不用它替换它trim,因为我不想在此时改变程序的含义或操作,除非我必须这样做.

java string

16
推荐指数
4
解决办法
1万
查看次数

Python DBUS SESSION_BUS - X11 依赖项

我已经在 Ubuntu 桌面上运行了示例 python 代码:

import dbus, gobject
from dbus.mainloop.glib import DBusGMainLoop
from dbus.mainloop.glib import threads_init
import subprocess
from subprocess import call

gobject.threads_init()
threads_init()
dbus.mainloop.glib.DBusGMainLoop( set_as_default = True )

p = subprocess.Popen('dbus-launch --sh-syntax', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
call( "export DBUS_SESSION_BUS_ADDRESS" , shell=True )
call( "export DBUS_SESSION_BUS_PID" , shell=True )

bus = dbus.SessionBus()

# get DBUS objects, do other stuff with SESSION_BUS
# in same time we can start more independent processes with this file
# finaly kill the SESSION_BUS process
Run Code Online (Sandbox Code Playgroud)

在桌面上成功后,我将代码移至仅使用 …

python x11 dbus

4
推荐指数
1
解决办法
4234
查看次数