我知道如何使用[x + y * width]线性索引模拟线性阵列中的二维数组.
我可以将它扩展到3d数组:[x + y * width + z * width * height].
是否存在N维数组的通用公式?
我正在寻找与语言无关的答案.
language-agnostic arrays linear-algebra multidimensional-array
我正在使用Linux套接字在C++中编写客户端 - 服务器对.我希望服务器监听连接,并且当连接一个客户端时,服务器应该拒绝任何尝试连接的其他客户端.
我尝试通过将listen函数中的backlog参数设置为0和1来实现这一点,并且这些值中的任何一个似乎都不起作用.第一个客户端按预期连接,但任何后续客户端只在第一个客户端完成时阻塞.对我来说真正令人困惑的是,他们不会阻止连接到服务器,他们会在第一次阅读时阻止.
我喜欢为pc/mac/linux制作非常简单的3D/2D游戏什么是最好的免费3d/2d引擎呢?我没有游戏编程的经验所以我想它必须易于学习,请用c ++谢谢
我对布尔逻辑有一个奇怪的问题.我必须做一些愚蠢的事,但我无法弄清楚.在下面的代码中,firstMeasure.isInvisibleArea为true,measureBuffer1为nil.即使test1由于某种原因正在评估NO,它仍然会进入我的if语句.如果我使用注释掉的行,它可以正常工作.知道为什么会这样吗?
BOOL firstVisible = firstMeasure.isInVisibleArea;
BOOL notFirstVisible = !(firstMeasure.isInVisibleArea);
BOOL measureBufferNil = measureBuffer1 == nil;
BOOL test1 = measureBuffer1 == nil && !firstMeasure.isInVisibleArea;
BOOL test2 = measureBufferNil && !firstVisible;
if (measureBuffer1 == nil && !firstMeasure.isInVisibleArea)
//if (measureBufferNil && !firstVisible)
{
//do some action
}
Run Code Online (Sandbox Code Playgroud)
更新1:
我将问题隔离到!firstMeasure.isInVisibleArea,因为我完全接受了measureBuffer位.里面的isInVisible区域是一个小的计算(它不会修改任何东西),但计算是使用self.view.frame.我也会把这个从等式中拿出来看看会发生什么.我的预感是self.view.frame正在两次调用isInVisibleArea之间切换.
更新2:这确实是问题所在.我在下面更详细地添加了答案
我正在尝试在我正在建立的网站上实施Google建议的内容,并且很好奇如何在非常大的数据集上进行操作.当然,如果您有1000个项目,则缓存项目并循环浏览它们.但是当你有一百万件商品时,你怎么做呢?此外,假设项目不是一个单词.具体来说,我对Pandora.com印象非常深刻.例如,如果您搜索"湿",它会带回"湿沙",但它也会带回Toad The Wet Sprocket.他们的自动完成功能很快.我的第一个想法是按前两个字母对项目进行分组,所以你会有类似的东西:
Dictionary<string,List<string>>
Run Code Online (Sandbox Code Playgroud)
其中键是前两个字母.那没关系,但是如果我想做类似Pandora的事情并允许用户看到与字符串中间匹配的结果呢?根据我的想法:Wet永远不会匹配Toad the Wet Sprocket,因为它将在"TO"桶而不是"WE"桶中.那么也许你可以把弦分开,"Toad the Wet Sprocket"进入"TO","WE"和"SP"桶(去掉"THE"这个词),但当你谈到一百万可能不得不说几句话的条目,似乎你很快就开始耗费大量的记忆.好的,这是一个很长的问题.思考?
我在ASP.NET MVC Controller类中有一个Action方法,它处理来自相当基本的"创建/编辑用户"页面的表单帖子.我是MVC的新手,所以我一直在关注各种Microsoft教程的代码示例,这是该方法目前的样子:
[AcceptVerbs(HttpVerbs.Post)]
public ViewResult Save([Bind(Prefix = "ServiceUser")]ServiceUser SUser)
{
if (SUser.ServiceUserId == 0) //new service user
ServiceUserHelper.AddServiceUser(SUser);
else //update to existing service user
{
using (ProjectDataContext db = DatabaseHelper.CreateContext())
{
this.UpdateModel(db.ServiceUsers.Single(su => su.ServiceUserId == SUser.ServiceUserId), "ServiceUser");
db.SubmitChanges();
}
}
//return a confirmation view
}
Run Code Online (Sandbox Code Playgroud)
这很好用; 但是我的直觉告诉我'ProjectDataContext ...'代码不属于控制器.如果我要将Update功能移动到另一个类(以我使用Insert方法完成的方式),我将失去Controller的UpdateModel()方法的便利性,并且可能最终必须做一些非常详细的事情读取现有实体,更新其属性并提交更改.
所以我的问题是,实现这一目标的最佳方法是什么?LINQ中是否有类似于UpdateModel()的方法可以在提交之前将两个相同类型的实体合并在一起?
谢谢.
使用TSQL检查SQL Server上是否存在数据库的理想方法是什么?似乎有多种方法可以实现这一点.
我还没有看到任何示例,但我认为它们保存在数据库中的包含实体表中.
IE浏览器.如果我有一个Person实体/聚合根和一个相应的Person表,如果它有一个名为Address的值对象,则Address值将保存在此Person表中!
对于我有其他实体(如公司等)拥有地址的域名,这是否有意义?
(我目前正在编写项目管理应用程序并尝试进入DDD)
使用Visual Studio 2008在C#中编程时,我经常希望"自动"生成代码.如果可能的话,我想通过让我的MSBuild解决方案文件调用Rake来实现它,Rake会调用Ruby代码来生成代码,生成的文件会自动出现在我的解决方案中.
这是一个业务示例(我可以命名的许多可能的示例),这种自动代码生成会有所帮助.在最近的一个项目中,我有一个包含一些包含美元金额的属性的界面.我想要第二个接口和第三个接口,它们具有与第一个接口相同的属性,除了它们是"合格"的业务单元名称.像这样的东西:
public interface IQuarterlyResults
{
double TotalRevenue { get; set; }
double NetProfit { get; set; }
}
public interface IConsumerQuarterlyResults
{
double ConsumerTotalRevenue { get; set; }
double ConsumerNetProfit { get; set; }
}
public interface ICorporateQuarterResults
{
double CorporateTotalRevenue { get; set; }
double CorporateNetProfit { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
在这个例子中,有一个"消费者业务部门"和一个"公司业务部门".IQuarterlyResults上的每个属性都成为ICorporateQuarterlyResults上名为"Corporate"+ [property name]的属性,同样也是IConsumerQuarterlyResults的属性.
为什么要为这些接口创建接口,而不仅仅是为Consumer提供IQuarterlyResults的实例,为Corporate提供另一个实例?因为,在使用我正在构建的计算器对象时,用户必须处理100个属性,如果他可以处理"完全限定"的属性名称(例如"ConsumerNetProfit"),那就不那么容易混淆了.
但是,在这个例子中,我们不要陷入困境.这只是一个例子而不是主要问题.
主要问题是:我喜欢使用Ruby和ERB来生成代码,我喜欢使用Rake来管理任务之间的依赖关系.为了解决上面的问题,我想做的是让MSBuild调用Rake,并让Rake/Ruby读取"核心"接口上的属性列表,然后生成代码以生成所有相关接口及其属性.每次进行构建时都会触发这个,因为我将它放入VS.NET解决方案的MSBuild文件中.
有没有人尝试过这样的事情?它是如何为你工作的?您可以分享哪些见解,包括优缺点,成功秘诀等等?
谢谢!
对于我的Web应用程序(PHP/MYSQL),我显示了一个项目列表和每行上的链接以删除该项目.现在,链接是
<a href='item.php?id=3&action=delete'>Delete Item</a>
Run Code Online (Sandbox Code Playgroud)
如果我想使用POST而不是...我该怎么做(这是一个动态生成的列表)?我可以在不使用表单的情况下发送POST数据吗?
或者,对于每件物品,我都必须这样做:
<form action='item.php?id={$item_id}' method='POST'>
<input type='hidden' name='action' value='delete'>
<input type='submit' value='delete item'>
</form>
Run Code Online (Sandbox Code Playgroud)
并将提交按钮设置为原始链接?
我不熟悉php CURL或REST,它们有助于解决这个问题吗?
c++ ×2
.net ×1
arrays ×1
asp.net ×1
asp.net-mvc ×1
autocomplete ×1
c# ×1
database ×1
forms ×1
game-engine ×1
html ×1
http ×1
iphone ×1
linq-to-sql ×1
linux ×1
msbuild ×1
objective-c ×1
optimization ×1
php ×1
rake ×1
rest ×1
ruby ×1
sockets ×1
sql-server ×1
t-sql ×1