问题列表 - 第17301页

C++ CPU寄存器用法

在C++中,局部变量总是在堆栈上分配.堆栈是应用程序可以占用的允许内存的一部分.该内存保存在RAM中(如果没有换成磁盘).现在,C++编译器是否总是创建在堆栈中存储局部变量的汇编程序代码?

举例来说,以下简单代码:

int foo( int n ) {
   return ++n;
}
Run Code Online (Sandbox Code Playgroud)

在MIPS汇编程序代码中,这可能如下所示:

foo:
addi $v0, $a0, 1
jr $ra
Run Code Online (Sandbox Code Playgroud)

如您所见,我根本不需要使用堆栈.C++编译器会识别出来,并直接使用CPU的寄存器吗?

编辑:哇,非常感谢您几乎立即和广泛的答案!foo的功能主体当然应该是return ++n;,而不是return n++;.:)

c++ compiler-construction assembly mips cpu-registers

10
推荐指数
4
解决办法
3676
查看次数

如何在Python中引用本地模块?

假设我们有一个模块m:

var = None

def get_var():
    return var

def set_var(v):
    var = v
Run Code Online (Sandbox Code Playgroud)

这将无法按预期工作,因为set_var()不会存储v在模块范围内var.它将创建一个局部变量var.

所以我需要一种m从内部引用模块的方法set_var(),它本身就是模块的成员m.我该怎么做?

python import module packages

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

外观和DAO之间有什么样的图案?

我正在为其Java EE Web应用程序设计部分公司架构.我很清楚使用façade和一个或多个DAO的原因.我遇到的问题是:

将存在一些肯定属于集成层的逻辑,因为它完全是为了保持数据模型的一致性.除了逻辑不仅仅是维护引用完整性和其他"原始"持久性任务,这些任务将由JPA和Hibernate处理.我不把它当作业务逻辑,因为它与任何业务功能分开.但是,我的理解是DAO应该只实现访问和持久化对象到数据源所需的逻辑.

我的结论是,我需要一个适合集成层的"业务对象"模式.我环顾四周,我发现的最接近的东西(但仍然不太合适)是Sun Transfer Object Assembler模式.

要么我对Java EE的理解存在差距,要么存在适合的模式.

java design-patterns java-ee

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

使用Web应用程序中的相对路径读取文件的内容

如何使用相对路径/ URL读取Web应用程序中文本文件的内容?

这些文件位于我的应用程序根目录中.

我不想指定我想要访问的文件的完整路径,因为我的测试环境不是我的生产环境的精确镜像.

c# io web-applications

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

C#Sort和OrderBy比较

我可以使用Sort或OrderBy对列表进行排序.哪一个更快?两者都在使用相同的算法吗?

List<Person> persons = new List<Person>();
persons.Add(new Person("P005", "Janson"));
persons.Add(new Person("P002", "Aravind"));
persons.Add(new Person("P007", "Kazhal"));
Run Code Online (Sandbox Code Playgroud)

1.

persons.Sort((p1,p2)=>string.Compare(p1.Name,p2.Name,true));
Run Code Online (Sandbox Code Playgroud)

2.

var query = persons.OrderBy(n => n.Name, new NameComparer());

class NameComparer : IComparer<string>
{
    public int Compare(string x,string y)
    {
      return  string.Compare(x, y, true);
    }
}
Run Code Online (Sandbox Code Playgroud)

.net c# sorting performance sql-order-by

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

在servlet和webservice之间共享静态对象

我有一个处理http get请求的servlet,我希望能够共享一个对象,这个对象也是由我开发的webservice使用的.它们都位于同一个Web应用程序容器中的同一个tomcat服务器上.我不确定如何做任何想法?

java tomcat web-services servlets

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

内部类中的默认赋值运算符,带有引用成员

我遇到了一个我不明白的问题,我希望这里有人可以提供一些见解.简化代码如下(原始代码是自定义队列/队列迭代器实现):

class B
{
public:
    B() {};
    class C
    {
    public:
        int get();
        C(B&b) : b(b){};
    private:
        B& b;
    };
public:
    C get_c() { return C(*this); }
};

int main()
{
    B b;
    B::C c = b.get_c();


    c = b.get_c();
    return EXIT_SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)

编译时,这会给我以下错误:

foo.cpp: In member function 'B::C& B::C::operator=(const B::C&)':
foo.cpp:46: error: non-static reference member 'B& B::C::b', can't use default assignment operator
foo.cpp: In function 'int main()':
foo.cpp:63: note: synthesized method 'B::C& B::C::operator=(const B::C&)' first required here
Run Code Online (Sandbox Code Playgroud)

我可以通过使用两个单独的C变量解决这个问题,因为它们应该是独立的'C'对象,但这只能隐藏问题(我仍然不明白为什么我不能这样做).

我认为原因是参考不能被复制,但我不明白为什么.我是否需要提供自己的赋值运算符和复制构造函数?

c++ reference assignment-operator

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

django - 如何使翻译工作?

我正在尝试使用i18n以不同语言呈现模板.我做了我能读到的所有内容,包括设置语言代码,创建和编译翻译文件,包括模板中的翻译标签以及所有这些,我的模板仍然用英语呈现,甚至通过{{LANGUAGE_CODE}}变量指向我打算渲染的正确(和不同)代码.我错过了什么?

模板:

{% extends "base.html" %}
{% load i18n %}
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
{% get_current_language_bidi as LANGUAGE_BIDI %}
{% block title %}{% trans "translation test" %}{% endblock %}
{% block content %}
<div id="some-text">
  {% trans "some translated text goes here" %}
  {% blocktrans %}
  <ol>
    <li>here are some</li>
    <li>items that should be</li>
    <li>translated as well</li>
  </ol>
  {% endblocktrans %}
  <ul>
      <li>The current language is <b>{{ LANGUAGE_CODE }}</b></li>
      {% if LANGUAGE_BIDI %}
        <li>The …
Run Code Online (Sandbox Code Playgroud)

django translation internationalization

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

18位数的时间戳?

我正在研究与电视录制有关的系统.

我正在从另一个系统解析以下xml(我没有文档):

<Program FileName="2009.11.07-Saturday 07 November 2009.dvr-ms" SubChannel="ABC1" StartTime="633931722046825183" StopTime="633932388000119414" ActualStopTime="633932388016825183" ShareShow="True" />
<Program FileName="2009.11.08-Sunday 08 November 2009.dvr-ms" SubChannel="ABC1" StartTime="633932586046773253" StopTime="633933252000157907" ActualStopTime="633933252006773253" ShareShow="True" />
<Program FileName="2009.11.09-Monday 09 November 2009.dvr-ms" SubChannel="ABC1" StartTime="633933450046168953" StopTime="633934116000207688" ActualStopTime="633934116026168953" ShareShow="True" />
<Program FileName="2009.11.10-Tuesday 10 November 2009.dvr-ms" SubChannel="ABC1" StartTime="633934314046899495" StopTime="633934980000869533" ActualStopTime="633934980096899495" ShareShow="True" />
<Program FileName="2009.11.11-Wednesday 11 November 2009.dvr-ms" SubChannel="ABC1" StartTime="633935178054202612" StopTime="633935844000077447" ActualStopTime="633935844064202612" ShareShow="True" />
<Program FileName="2009.11.12-Thursday 12 November 2009.dvr-ms" SubChannel="ABC1" StartTime="633936042047633656" StopTime="633936708000009191" ActualStopTime="633936708047633656" ShareShow="True" />
Run Code Online (Sandbox Code Playgroud)

我的问题是,有没有人认识到StartTime和StopTime属性的时间戳格式?我认为通常时间戳到第二个有10个数字,所以其他8个来自哪里?我的猜测类似于时区和毫秒精度.

我正在使用php,所以将PHP转换为日期时间的PHP特定方式会很好,但是一切都很好.

php xml timestamp

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

覆盖文本文件中的特定行?

如何在c?中覆盖文本文件中的特定行?我在需要写入文件的多个变量中有值.

c variables file file-writing

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