小编cdh*_*wie的帖子

网络编程中的流和数据报有什么区别?

套接字(流)与套接字(数据报)之间有什么区别?为什么用一个而不是另一个?

sockets network-programming datagram

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

php foreach继续

如果不满足某些条件,我试图跳到循环的下一次迭代.问题是循环无论如何都在继续.

我哪里出错了?

更新了代码示例以响应第一条评论.

    foreach ($this->routes as $route => $path) {
        $continue = 0;

        ...

        // Continue if route and segment count do not match.
        if (count($route_segments) != $count) {
            $continue = 12;
            continue;
        }

        // Continue if no segment match is found.
        for($i=0; $i < $count; $i++) {
            if ($route_segments[$i] != $segments[$i] && ! preg_match('/^\x24[0-9]+$/', $route_segments[$i])) {
                $continue = 34;
                continue;
            }
        }

        echo $continue; die(); // Prints out 34
Run Code Online (Sandbox Code Playgroud)

php foreach continue

49
推荐指数
3
解决办法
7万
查看次数

我应该从DAL返回IEnumerable <T>还是IQueryable <T>?

我知道这可能是意见,但我正在寻找最佳实践.

据我所知,IQueryable<T>实现IEnumerable<T>,所以在我的DAL中,我目前有方法签名,如下所示:

IEnumerable<Product> GetProducts();
IEnumerable<Product> GetProductsByCategory(int cateogoryId);
Product GetProduct(int productId);
Run Code Online (Sandbox Code Playgroud)

我应该IQueryable<T>在这里使用吗?

这两种方法的优点和缺点是什么?

请注意,我打算使用Repository模式,所以我将有一个这样的类:

public class ProductRepository {

    DBDataContext db = new DBDataContext(<!-- connection string -->);

    public IEnumerable<Product> GetProductsNew(int daysOld) {
        return db.GetProducts()
          .Where(p => p.AddedDateTime > DateTime.Now.AddDays(-daysOld ));
    }
}
Run Code Online (Sandbox Code Playgroud)

我应该改变我IEnumerable<T>IQueryable<T>吗?一个或另一个有哪些优点/缺点?

datacontext data-access-layer iqueryable linq-to-sql

38
推荐指数
3
解决办法
6184
查看次数

删除.git/index.lock':权限被拒绝

我完全不知道为什么我的git完全锁定了我.我有一台笔记本电脑,我在工作和家里使用.对于这两个帐户,我广泛使用git,两者都位于不同的路径中.今天我上班了,我什么也做不了,我看到的只有:

/Applications/MAMP/htdocs/my_site/.git/index.lock': Permission denied
Run Code Online (Sandbox Code Playgroud)

对于我所关心的所有我可以删除我所在的分支.我已经尝试删除分支,检出任何其他分支,删除index.lock文件(如网站上的其他用户所建议).我只打开终端窗口,没有其他可能的程序使用git(据我所知,在活动窗口中没有任何明显的意义).我已经将计算机直接重新启动到我的工作帐户中,但仍然没有运气.我怎样才能删除这个锁?

git macos

27
推荐指数
4
解决办法
5万
查看次数

为什么不能用参数构造条件中定义的变量?

问题很简单.为什么编译:

bool b(true);
if (b) { /* */ }
Run Code Online (Sandbox Code Playgroud)

这个编译:

if (bool b = true) { /* */ }
Run Code Online (Sandbox Code Playgroud)

但不是这个:

if (bool b(true)) { /* */ }
Run Code Online (Sandbox Code Playgroud)

在我的实际代码中,我需要构造一个对象并对其进行测试,同时在if-block结束时将其销毁.基本上,我正在寻找这样的东西:

{
    Dingus dingus(another_dingus);
    if (dingus) {
        // ...
    }
}
Run Code Online (Sandbox Code Playgroud)

当然,这会奏效:

if (Dingus dingus = another_dingus) { /* */ }
Run Code Online (Sandbox Code Playgroud)

但后来我正在构建一个Dingus并呼吁operator=它.对我来说似乎合乎逻辑,我能够使用我喜欢的任何构造函数构造对象.

但我很困惑为什么这在语法上不正确.我用G ++和MSVC++进行了测试,他们都抱怨这个结构,所以我确定它是规范的一部分,但我很好奇这个的推理以及可能存在的非丑陋的解决方法.

c++

21
推荐指数
2
解决办法
1756
查看次数

在C++中创建新类型

在C++中使用typedef可为类型创建别名.

所以:

typedef double Length;
typedef double Mass;
Run Code Online (Sandbox Code Playgroud)

创建两个可以混合的别名.换句话说,我们可以将Mass类型的值传递给期望值类型为Length的函数.

是否有轻量级的创建新类型的方法?我希望它们在下面是双重但是"不同",以便不能用它来代替另一个.

我更喜欢比创建新类或结构更轻松的东西.另外,我知道boost中的lib维度.这比我需要的更复杂,做得更多.

c++ typedef

20
推荐指数
2
解决办法
5733
查看次数

在单个请求中组合多个Django模板

我想知道是否有人可以帮助我找出解决以下问题的最佳方法.我正在构建一个使用Django模板构建其Web UI组件的Web应用程序.有许多常见的HTML元素,如页眉/页脚,HTML头,标头等.我想对这些进行一次编码,并将它们"包含/组合"到代表核心应用程序功能的其他模板中.

这可能使用Django模板吗?如果是这样,我怎么能完成那个?

django django-templates

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

git责备多次修改一行?

如果一行在两个版本之间来回多次修改,git blame似乎只显示该行的最新提交.

是否可以让它显示该行的所有提交?

git blame

13
推荐指数
2
解决办法
2413
查看次数

在Symfony2中自定义选择/实体字段的呈现

我希望<select>在其<option>s 上添加其他数据的元素.为了举例,我想要一个服务选择器(非多实体字段),在选择更改时重置另一个输入值.我对使用JS数据结构不感兴趣,我需要将渲染字段看起来如下所示:

<select name="...">
    <option value="1" data-price="90">Service 1</option>
    <option value="2" data-price="40">Service 2</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我会采取两种不同的解决方案,并很高兴看到他们两个的答案.

  1. 我通过使用form传递给树枝的变量开始组装上面的HTML代码,在Twig中手动渲染字段.解决这个问题我有两个问题.A)我找不到一种安全的方法来告诉应该命名的name字段,即如何通过使用变量获得Symfony期望的属性form.service(service是FormType中字段的名称).[请告诉我根据Symfony 目前如何命名字段来连接一些值的技巧; 一个人应该依赖接口而不是逆向工程.] B)我不知道如何访问选择列表,即由entity字段query_builder选项组装的数组.[由于我正在寻找一般解决方案,我不愿意将这些项目复制到控制器中的twig参数 - 只是为了避免这些建议.]
  2. 我会覆盖相关字段块的渲染,如在食谱的样式章节中所建议的那样,但是有三个问题.A)我无法找出应该覆盖哪些块(因此我找不到样本).B)我会将参数从表单生成器传递给块,让它知道data-要渲染的额外属性,但我不知道如何做到这一点.最后C)在那些我不需要偏离标准渲染的情况下(例如当字段是多个时)我不知道如何回退到默认渲染.

所以这些实际上是5个问题(1A,1B,2A,2B,2C),但我认为它们对其他人一起回答更有用,因为它们都解决了我认为关于选择场渲染的无证问题.

php customization rendering symfony

9
推荐指数
1
解决办法
9778
查看次数

像素着色器实际上做了什么?

我对图形编程比较陌生,而且我刚读过一些书籍并且一直在扫描教程,所以请原谅我这是否是一个愚蠢的问题.

我已经掌握了directx11的基础知识,现在我想要玩得开心.所以很自然地我一直在深入阅读着色器管道,我已经着迷了.编写一个简单,微不足道的代码片段的想法必须足够有效,每60秒运行数万次而不浪费资源,这让我急于掌握这个概念,然后再继续并可能弄得一团糟东西的.我遇到的问题是掌握像素着色器实际上在做什么.

顶点着色器很容易理解,您可以在一个统一的数据结构中组织一个对象的顶点,这些数据结构与它的信息相关,比如位置和纹理坐标,然后将每个顶点传递到着色器,通过变换矩阵从3d转换为2d .只要我理解它,我就可以找出如何编码它.

但我没有像素着色器.我得到的是顶点着色器的输出是像素着色器的输入.那么只是将像素着色器交给多边形顶点的2d坐标吗?我所了解的是,像素着色器接收单个像素并对其进行计算以确定颜色和光照等事物.但如果那是真的,那么哪个像素呢?整个屏幕还是只是位于变换的2d多边形内的像素?

或者我完全误解了什么?

pixel-shader direct3d11

8
推荐指数
1
解决办法
2262
查看次数