小编XBi*_*13X的帖子

Mysysgit"(END)"显示,我该如何进行?

在Windows下使用mysysgit时,我不知道如何在Git Bash中运行git log后重新获得控制台窗口的控制权.这看起来很简单,但我找不到组合键或命令,所以我发现自己必须关闭控制台窗口并重新启动Git Bash的新实例才能与git交互.

退出日志查看器需要的键组合和/或命令是什么?

windows git logging git-bash

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

什么是计算图形中三角形数量的有效算法?

什么是计算无向图中三角形数量的有效算法)(其中图形是一组顶点和边)?我一直在搜索Google,每天连续三天阅读我的教科书架几个小时.

这是一个家庭作业,我需要这样一个算法,但开发它不会指定任何任务.我们可以简单地从外部资源中找到这样的算法,但我已经走到了尽头.

为了清楚起见,图中的三角形是长度为3的循环.诀窍是它需要处理最多10,000个节点的顶​​点集.

我目前正在使用C#,但更关心解决此问题的一般方法,而不是复制和粘贴代码.

在高层,我迄今为止的尝试包括:

  • 广度优先搜索,跟踪长度为3的所有独特循环.这对我来说似乎是一个好主意,但我无法让它发挥作用
  • 在图中的所有节点上循环以查看三个顶点是否共享边.这对于较大的数据集而言运行时间太慢.为O(n ^ 3).

算法本身是计算聚类系数的一部分.

algorithm graph-theory

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

聚合关系代数(最大值)

我目前正在做一项家庭作业,要求进行选择,以拉出包含与所有其他记录相比最大值的特定属性的元素.我在线阅读了一些引用称为"最大"的"聚合"关系代数函数,但它们没有描述它如何使用基本运算符.如何选择包含最大值的属性?

sql aggregate relational-algebra max aggregate-functions

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

使用C中的utime在UNIX上获取文件修改时间

一位教授告诉我,你可以使用utime.h获得文件的最后修改时间.但是,手册页似乎引用了utime()仅设置此值.如何在UNIX系统上查找上次在C中更改文件的时间?

c unix file unix-timestamp

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

Prolog类型检查

有没有办法确定Prolog中列表中元素的类型?我知道变量没有在Prolog中明确输入,但是我需要检查一个元素是一个数字,一个特定的字符等.这怎么能实现呢?

types list prolog

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

如何正确引用GNU readline库来扫描终端输入?

我正在尝试编译在GNU readline中使用以下内容的C代码.

#include <readline/readline.h>;
#include <readline/history.h>;
Run Code Online (Sandbox Code Playgroud)

我已经尝试将<>更改为""并使用和不使用-lreadline选项进行编译.似乎没什么用.在gcc下编译时没有-lreadline导致在编译时生成以下内容(详细):

Reading specs from /software/gcc-3.4.6-0/pkg/lib/gcc/i386-unknown-freebsd6.1/3.4.6/specs
Configured with: ../gcc-3.4.6/configure --prefix=/software/gcc-3.4.6-0/pkg --disable-dependency-tracking --localstatedir=/var --disable-nls --program-suffix=34 --enable-shared --enable-version-specific-runtime-libs
Thread model: posix
gcc version 3.4.6
 /software/gcc-3.4.6-0/pkg/libexec/gcc/i386-unknown-freebsd6.1/3.4.6/cc1 -quiet -v myshell.c -quiet -dumpbase myshell.c -auxbase myshell -version -o /var/tmp//ccVSq3jQ.s
ignoring nonexistent directory "/software/gcc-3.4.6-0/pkg/lib/gcc/i386-unknown-freebsd6.1/3.4.6/../../../../i386-unknown-freebsd6.1/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /software/gcc-3.4.6-0/pkg/include
 /software/gcc-3.4.6-0/pkg/lib/gcc/i386-unknown-freebsd6.1/3.4.6/include
 /usr/include
End of search list.
GNU C version 3.4.6 (i386-unknown-freebsd6.1)
        compiled by GNU C …
Run Code Online (Sandbox Code Playgroud)

c unix gnu readline

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

这个私有变量如何"未在此范围内声明"?

我目前正在尝试更多地了解C++中的面向对象设计(熟悉Java)并且遇到了一些问题.我试图在一个使用SFML构建的游戏中学习这些原理的项目用于图形和音频.我有以下两个文件.

WorldObject.h

#ifndef WORLDOBJECT_H
#define WORLDOBJECT_H
#include <SFML/Graphics.hpp>
#include <string>
#include "ImageManager.h"

class WorldObject
{
 private:
  sf::Sprite _sprite;
  void SetImagePath(std::string path);
  sf::Sprite GetGraphic();
};
#endif
Run Code Online (Sandbox Code Playgroud)

WorldObject.cpp

#include "WorldObject.h"
void WorldObject::SetImagePath(std::string path)
{
  _sprite.SetImage(*gImageManager.getResource(path));
}

sf::Sprite GetGraphic()
{
  return _sprite;
}
Run Code Online (Sandbox Code Playgroud)

我没有看到任何这些问题,但是当我尝试编译它们时,我从g ++收到以下错误:

WorldObject.cpp: In function ‘sf::Sprite GetGraphic()’:
WorldObject.cpp:9: error: ‘_sprite’ was not declared in this scope
make: *** [WorldObject.o] Error 1
Run Code Online (Sandbox Code Playgroud)

我在这段代码中缺少什么?试图理解设置继承层次结构的正确方法已经导致游戏开发中迄今为止遇到的大多数问题,但我知道这主要是因为我更习惯于使用Java的继承模型而不是C++的多重模型.继承模型.

c++ oop scope declare sfml

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

在这种情况下(C#)更换开关组和Enum的正确方法是什么?

如果它有帮助,下面的问题是在我正在建立的游戏的背景下.

在几个不同的地方我有以下场景.存在一个父类,对于这个名为Skill的示例,我有许多子类来实现父类中的方法.还存在另一个我们称之为Vocation的父类.技能需要列在职业的不同子类中.但是,这些技能需要适用于使用任何给定职业的游戏中的任何内容.

我当前的设置是有一个名为Skill.Id的Enum,因此Vocation包含来自该Enum的值的集合,当游戏中的实体接受该Vocation时,该集合将被传递到另一个名为SkillFactory的类中.每次我创建一个新的Skill子类时,Skill.Id都需要一个新的条目,以及新子类的构造函数的switch块中的一个案例.

即:

//Skill.Id
Enum{FireSkill,WaterSkill,etc}

//SkillFactory
public static Skill Create(Skill.Id id)
{
    switch(id)
    {
        case Skill.Id.FireSkill:
             return new FireSkill();
        //etc
    }
}
Run Code Online (Sandbox Code Playgroud)

这非常好用,但是使用枚举和切换块作为一种介于两者之间的感觉就像解决这个问题所需的开销一样.是否有更优雅的方法来创建这些Skill子类的实例,但仍然允许Vocation包含一个集合来识别它可以使用的技能?

编辑:我很好地抛出枚举和关联的开关块,只要Vocation可以包含允许任意实例化Skill子类的集合.

c# xna enums switch-statement

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

为什么我的实体框架代码第一个DbContext没有显示填充表中的实体?

我正在尝试将我的应用程序部署到测试环境,但是无法使Entity Framework与数据库完美配合。在开发中,我使用数据库初始化程序来为数据库添加种子,并且该程序工作正常。但是,当我将应用程序部署到实际的IIS实例时,无法使其与数据库接口。我的自定义初始化规则根本没有运行,所以我改为手动创建数据库。

我使用ObjectContext.CreateDatabaseScript()作为我的SQL脚本的起点,并且SSMS验证了在适当的表中是否填充了两行。

运行应用程序后出现我的问题。我有自定义的成员资格和角色提供程序,它们似乎都无法检测到数据库中存在这两个角色。

如何使我的实体框架识别这些行不是空的?我当前在存储库中使用私有DbContext处理与Entity Framework的通信,并禁用了我的自定义初始化程序,直到此问题解决为止。

尝试在数据库中查找角色的代码:

context.Roles.Single(r => r.Name == role)
Run Code Online (Sandbox Code Playgroud)

该数据库在“角色”表中显示以下内容:

Id  Name     Description
1   Company  NULL
2   Customer NULL
Run Code Online (Sandbox Code Playgroud)

LINQ生成一个空序列异常,例如context.Roles为空。

c# asp.net-mvc entity-framework entity-framework-4 asp.net-mvc-4

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

我的 DbContext 是如何处置的?

我在将单体 ASP.NET MVC 应用程序拆分为 N 层应用程序时遇到了很大的困难。在以下示例中,在第一次调用_messageRepo.Create()期间,会引发异常,表明DbContext无法使用,因为它已被释放。

我看不到这是如何发生的,并且尝试中断Dispose()方法实际上并不会导致应用程序在调试期间中断。

基本结构如下:

  • 控制器注入了它们使用的每个服务的实例 //即: public MyController(IMessageService messageService)
  • 服务包含任何所需的存储库实例(即:_messageRepository
  • 存储库使用MyContext的实例( DbContext的子类)
  • 这些实例会在需要时重建,如下例所示

    using(var context = new MyContext())
    {
        _messageRepo = new MessageRepository(context);
        _idRepo = new IdentityRepository(context);
    
        var status = _messageRepo.GetStatus(Int32.Parse(message.To));
        message.To = status.Header.From.Name;
        message.ToHash = Obfuscate.SaltAndHash(message.To);
        message.Subject = "RE:" + status.Header.Subject;
    
        var toUser = _idRepo.Get(message.To);
        var fromUser = _idRepo.Get(_userName);
        var rawMessage = new Message()
        {
            Content = message.Content,
            Attachments = GetAttachments(message.AttachmentIds)
        };
        var header = …
    Run Code Online (Sandbox Code Playgroud)

c# dispose entity-framework-4 asp.net-mvc-3 dbcontext

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