问题列表 - 第34042页

函数重载,其中参数仅由省略号不同

我有这个日志系统,我正在寻找一些字符串操作的快捷方式.

日志系统通过功能宏使用,然后转发到单个函数调用.例如#define Warning(...) LogMessage(eWarning, __VA_ARGS__);.

然后LogMessage snprintf进入一个新的缓冲区,然后将该消息提供给碰巧安装的任何日志目标; printf,OutputDebugString等

不幸的是,我遇到了一个问题,即我们所拥有的缓冲区不够大,因此输出会被截断.我还意识到,如果输出消息中包含百分比符号,则此方法将失败,因为snprintf将尝试处理va_args.最后,因为我们的大多数日志消息都不使用va_args,所以复制字符串只是为了将它呈现给记录器似乎很愚蠢.

那么 - 鉴于我的函数原型,我是否应该能够根据省略号的存在进行重载?换句话说,我是否可以假设我可以做以下事情:

LogMessage(LogLevel, const char* message, ...);
LogMessage(LogLevel, const char* message);
Run Code Online (Sandbox Code Playgroud)

我的谷歌尝试没有产生任何特别有用的东西(只是告诉我椭圆将匹配,如果没有别的,根据我的要求,没有任何匹配),我的初始实施只是给了我一个模糊的函数调用错误.

有了这个错误,我应该接受我不能这样做,但我想知道它是否只是我正在使用的编译器,或者我是否做错了.我可以达到类似的效果

// edited version of what I really have to remove our local APIs,
// please excuse minor errors
const char* message = NULL;
char buffer[512];

va_list args;
va_start(args, format);

if(strcmp(format, "%s") == 0) {
    message = va_arg(args, const char*);
}
else if (strchr(format, '%') == NULL) {
    message = format;
}
else …
Run Code Online (Sandbox Code Playgroud)

c++ overloading variadic

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

Django:将模型方法暴露给管理员

示例型号:

class Contestant(models.Model):
    first_name = models.CharField(max_length=255)
    last_name = models.CharField(max_length=255)
    email = models.EmailField()
    ...

    def send_registration_email(self):
        ...
Run Code Online (Sandbox Code Playgroud)

我希望能够将此方法公开给管理员,以便管理员可以登录并手动调用它.我正在考虑尝试属性属性,但不确定这是否会起作用.还有可能公开这样的方法,它接受除self以外的参数,可能是select或者某些东西的相关对象吗?

python django django-models django-admin

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

HTML 中的 Likert 量表

我正在尝试在 HTML 中查找李克特量表的代码。我有三个问题:

  1. 我想说 - 左边没有罪,非常有罪

  2. 我想说 - 左边有很多伤害,右边没有伤害

  3. 我想说 - 左边不确定,右边非常确定。

    有谁知道如何编码?

html css scale

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

如何使用其他文件中的搜索参数grep文件

我正在尝试使用包含IP地址的文件作为搜索思科防火墙配置文件的基础.通常,我会使用类似的东西:

for i in $(cat ip.file); do grep $i fw.config; done
Run Code Online (Sandbox Code Playgroud)

但这样做绝对没有任何回报.如果我将上面的脚本放入一个文件并使用bash -xv标志执行它,每行返回如下内容:

+ for i in '`cat ip.file`'
+ grep $'1.2.3.4\r' fw.config  (each IP address is different)
Run Code Online (Sandbox Code Playgroud)

grep 1.2.3.4 fw.config正是我想要发生的事情,但我从这个命令得不到任何回报.

我知道grep -f选项,但也没有返回任何内容.我不是一个经验丰富的编码员,所以我可能会忽视一些明显的东西.

bash grep for-loop

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

用于Django/Python的CSS模板系统?

我想知道是否有像Django的HTML模板系统,对于CSS ..我对此的搜索没有任何使用.我知道像SASS和CleverCSS这样的东西,但据我所知,这些仍然无法解决我的问题,因为我想根据某些条件动态生成一个CSS文件,以便根据不同的CSS文件提供服务在特定的用户会话上......

我想最小化javascript/AJAX用于某些事情(因为它用于在他们仍在使用IE 6的某个医院中运行的遗留系统),我也有兴趣可能最小化其他项目的javascript.那么它就是有1个CSS文件的地方,但它可能需要根据情况进行更改(这将通过CleverCSS完成),但问题是如果我只是将更改写入1个文件,那么这个将被提供给每个人,即使他们可能有一个不同的CSS状态"状态"取决于他们对应用程序的使用,所以我想删除CSS文件的物理关联,而不是每次动态生成(所以它是特定用户会话的独特之处),Django的HTML模板系统的工作方式.

css python django dynamic django-templates

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

缩进,漂亮的打印代码,包括Django模板标签,HTML,CSS和JavaScript

在处理一堆狡猾的Django模板文件时,我想缩进它们.

这些文件包含:

  • HTML,文件的大部分.也许是一个或两个标签.
  • JavaScript,内部脚本标记.
  • 样式标签内的CSS
  • Django模板指令在{%...%}对内.

当然有一个工具可以做到这一点.面对意外角色时,大多数工具都会做傻事.哪一个有效?

澄清一下,这段代码的缩进是什么?

{% extends 'layout.html' %}
{% if admin %}
<style type="text/css">
body {
  color: purple;
  background-color: #d8da3d }
</style>
<p><b>ADMIN SCREEN</b></p>
{% endif %}
<script>
set_active_tab("Welcome");
if (first_time()) { turn_on_highlights(); }
</script>
<table><tr><td>a</td></tr><tr><td>b</td></tr></table>
Run Code Online (Sandbox Code Playgroud)

我尝试过各种工具,包括Universal Indent GUI,但没有成功.

html javascript indentation django-templates

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

如何在javascript中声明变量

$("#btnsub").click(function () {
    var add = $("#txtname").val();

    var obj;
    var geo = new google.maps.Geocoder;
    geo.geocode({ 'address': add }, function (results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            obj = results[0].geometry.location;
            obj = convert(obj);
            alert(obj);
        } else {
            alert("Geocode was not successful for the following reason: " + status);
        }
    });
    alert(obj);
  // why this alert run first instead of the upper alert()
});
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

git-svn和一个远程git repo同步

在我的工作场所,我们使用SVN进行版本控制.当我发现它时,我切换到git-svn,最近我决定将我的一些私有分支同步到另一个远程git仓库.然后,工作流包括通过git-svn重新定位和推送到SVN仓库,同时处理推送到远程git仓库的单独的私有功能分支,以便我可以在家中处理它们(如有必要).

现在,每次我从git-svn转发时,我的远程git repo要求先被拉.有时候,在进行拉取时,更改不会干净地合并,即使据说远程仓库应该包含与svn同步的本地提交相同的提交.最近我再次将它们推到远程仓库之前删除远程分支,但这不可能是正确的.

是不是没有为这种工作流程设置git,或者我做错了什么?

谢谢!

svn git workflow git-svn

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

展平迭代器

是否有任何现有的迭代器实现(可能在boost中)实现某种展平迭代器?

例如:

unordered_set<vector<int> > s;

s.insert(vector<int>());
s.insert({1,2,3,4,5});
s.insert({6,7,8});
s.insert({9,10,11,12});

flattening_iterator<unordered_set<vector<int> >::iterator> it( ... ), end( ... );
for(; it != end; ++it)
{
    cout << *it << endl;
}
//would print the numbers 1 through 12
Run Code Online (Sandbox Code Playgroud)

c++ iterator std c++11

39
推荐指数
2
解决办法
5893
查看次数

ExtJS:加载前清除面板内容

我正在尝试使用#{component} .load({url:''})将一些内容加载到现有面板; 但面板已经有了一些内容,我该如何清除面板内容?

extjs

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