问题列表 - 第14166页

可以修改C ​​++中的结构吗?还是有限制?

我有这个类,它有一个两个字符结构和另一个结构的双列表模板

typedef struct KeyC{
     char K[5];
     char C[9];
} TKeyC;

typedef struct Bin{
     char Car;
     char Cad[9];
     TKeyC *KC;
} TBin;

class Bo {
    private:
        TDoubleList<TBin> *Ent;

    public:
            ...
}
Run Code Online (Sandbox Code Playgroud)

我有一个创建节点的方法.没问题,但是当我调用其他方法来修改指向新TKeyC结构的指针的方向时,这根本不会发生.

TNode<TBin> *Aux;
TKeyC *AuxKC=new TKeyC;
Aux->getObj().KC=AuxKC;
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我是否必须使用类而不是结构,或者是结构问题还是存在错误?

更新

template <class T>
class TNode
{
    private:
         T TObj;
         TNode<T> *Prev,*Next;

    public:
        TNode();
        ~TNode();
        TNode(T);
        void setObj(T);
        void sPrev(TNode<T>*);
        void sNext(TNode<T>*);
        T getObj();
        TNode<T>* gPrev();
            TNode<T>* gNext();
};
Run Code Online (Sandbox Code Playgroud)

方法getObj:

template <class T>
T TNode<T>::getObj() {return(TObj);};
Run Code Online (Sandbox Code Playgroud)

c++ struct

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

检测ASP.NET MVC上的会话到期

我建立了一个购物车,使用会话状态来保存购物车数据,同时用户正在浏览商店.

我有一个问题,如果我在购物车的step1上长时间打开浏览器窗口,然后按"转到步骤2",我的操作会抛出错误,因为step2操作假定会话未过期且ShopCart对象处于正确状态.

我希望这个场景对我的用户更好,但我想我需要以某种方式检测会话是否已过期,以便在下一个请求时我可以将它们抛给Step1.

我发现以下代码声称要解决问题,但它对我不起作用.

IsNewSession条件为真,但条件

if ((null != sessionCookie) && (sessionCookie.IndexOf("ASP.NET_SessionId") >= 0)) {
   // handle expired session
}
Run Code Online (Sandbox Code Playgroud)

始终返回false,它永远不会处理无效会话.我糊涂了.

这在ASP.NET(和MVC)中是否可行?

c# asp.net asp.net-mvc session session-state

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

如何处理Windows窗体datetimepicker ArgumentOutOfRangeException?

我遇到了Windows窗体中DateTimePicker控件的一个非常具体的错误.该控件具有自定义格式(MM-YYYY - > 01/2010) - 信用卡的月份/年份.今天是9月29日.如果用户选择该控件,并使用键盘将月份设置为2月,则控件将抛出ArgumentOutOfRangeException.没有2009年2月29日这样的日期.这也将发生在第31天,只有30天的一个月.

通过将日期设置为"01"来处理此问题很容易,但是用户可以单击日历以手动选择30日,然后使用键盘选择2月.

当输入发生在GUI而非真正的代码中时,如何捕获此异常?我们试图在TextChanged事件中捕获它,但这已经太晚了.异常已经抛出.

有办法处理这个案子吗?如果控件自动将当天更改为该月的最高值,那将是很好的.或者至少它是否通过事件传递了异常.

(我知道我们可以捕获KeyPressed事件,并且每次将日期设置为01,但这感觉很'hacky').

.net exception datetimepicker winforms

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

如何将Perl数组分区为相同大小的块?

我有一个固定大小的数组,其中数组的大小始终为3.

my @array = ('foo', 'bar', 'qux', 'foo1', 'bar', 'qux2', 3, 4, 5);
Run Code Online (Sandbox Code Playgroud)

我如何聚类数组成员,以便我们可以得到一个数组3的数组:

$VAR = [ ['foo','bar','qux'],
         ['foo1','bar','qux2'],
         [3, 4, 5] ];
Run Code Online (Sandbox Code Playgroud)

perl

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

是否期望jQuery $('span').html()将XHTML br标签转换为html语法?

如果我有这样的span标签:

 <span>Hi<br />SecondLine</span>
Run Code Online (Sandbox Code Playgroud)

我称之为jQuery函数:

 var html = $('span').html();
Run Code Online (Sandbox Code Playgroud)

html设置为:

 Hi<br>SecondLine
Run Code Online (Sandbox Code Playgroud)

现在,我意识到函数的名称是html()而不是xhtml().但这是预期的行为吗?我可以指望它,或者我总是需要检查xhtml br标签和html br标签,例如,这个例子:

function br2nl(text) {
    return text.replace(/<br \/>/gi, '\n').replace(/<br>/gi, '\n');
}
Run Code Online (Sandbox Code Playgroud)

html jquery

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

如何从Ant中的Mavens pom获取项目版本

我有maven项目和ant任务.在ant任务中,我想从pom.xml获取版本属性.怎么弄?

在pom.xml中: <version>2.03.010</version>

ant maven-2

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

ThreadLocal的目的?

这里给出的ThreadLocal的目的表明该变量是访问包含ThreadLocal变量的对象的任何Thread的本地变量.将ThreadLocal变量作为类的成员然后将其作为Thread的本地变量而不是将本地变量赋予Thread本身,它会有什么不同?

java multithreading thread-local

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

简要编辑可用性

在1990年代,我使用了一个名为Brief的精彩编辑器.但最近我在Visual Studio编辑器中使用了简短的模拟器模式,我不满意.

Brief编辑器的一个主要优点是,它没有任何滚动条和菜单项,我可以完全使用我的屏幕.窗户隔板也非常纤薄.

我的问题:那些曾经是Brief的粉丝的家伙/女孩,在DOS版本去世后,哪个编辑器类似于DOS版本的Brief更好?

注意:当我在Windows中编辑时,此问题很明显.我有一些学习如何在Linux中使用vi.

editor brief-bookmarks

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

如何在PostgreSQL查询中声明变量

如何声明变量以用于PostgreSQL 8.3查询?

在MS SQL Server中,我可以这样做:

DECLARE @myvar INT
SET @myvar = 5

SELECT *
FROM somewhere
WHERE something = @myvar
Run Code Online (Sandbox Code Playgroud)

我如何在PostgreSQL中做同样的事情?根据文档变量被简单地声明为"名称类型;",但这给了我一个语法错误:

myvar INTEGER;
Run Code Online (Sandbox Code Playgroud)

有人能给我一个正确语法的例子吗?

sql postgresql postgresql-8.3

205
推荐指数
13
解决办法
31万
查看次数

安全道德保密

3年前,我为一家大型电子商务网站进行了安全审核.在进行审计时,我发现了几个严重的安全问题,这些问题允许访问在事务完成后无法访问的数据.在这个网站上有几个主要的风险.首先,您可以看到实时通过系统的订单; 所有交易均由该公司手动处理.如果您查看交易,则可以看到姓名,地址和送货目的地.我在这里看到2个滥用点,1 - 您可以简单地编辑发货地址并将货物发送给您自己,2 - 您可以在下订单时调用用户并执行"电话确认"以获取访问权限与基本社会工程的cc信息.

您还可以使用更多工作转储cc信息和订单ID号,然后简单地匹配订单ID和用户信息.这都是通过在其网站上使用公开函数并修改几个值来实现的.是的我有点模糊是有原因的.

这家公司的营销总监3年前曾被警告过这些风险,并没有采取任何措施来纠正这些风险.我不怀疑我是否能找到其他人可以.该网站每年进行88,000笔交易,并且所有订单仍处理数据并且可访问.

所以道德问题......我该怎么办?我的公司不关心...所以我无法在那里得到帮助.如果我联系营销人员,他将继续掩盖他的屁股和那些无能的内部开发团队(冷聚变)的评估.我可以联系更高层的人吗?我去我的公司吗?我只是挖掘数据并将其卖给竞争对手减去cc信息吗?知道这件事我该怎么办?它唠叨着我,我不能放手.这只是我所知道的众多网站中的一个,但是访问的便利性和高流量让我思考了很多.

security

8
推荐指数
2
解决办法
302
查看次数