问题列表 - 第36976页

Visual C++/CLI(CLR)空指针

我不想实现以下代码 - 检查指针是否为null或不为null.如果指针指向对象,则对该对象执行操作,否则 - 跳过该代码块.

我的代码:

ref class EchoClient {
private:
    GameMatrix^ gameMatrix;
public:
    EchoClient(void);
    EchoClient(GameMatrix^);
    void do();
};

EchoClient::EchoClient(void)
{
    this->gameMatrix = NULL;
}

EchoClient::EchoClient(gameMatrix)
{
    this->gameMatrix = gameMatrix;
}

void EchoClient::do() {
    if(this->gameMatrix != NULL)
    {
        this->gameMatrix->redrawMatrix();
    }
}
Run Code Online (Sandbox Code Playgroud)

错误:

error C2446: '!=' : no conversion from 'int' to 'GameMatrix ^' k:\visual studio 2010\Projects\EchoClient3WS\EchoClient3WS\EchoClient.cpp    106
Run Code Online (Sandbox Code Playgroud)

任何解决方案

clr pointers c++-cli visual-c++

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

使用Javascript变量设置Cookie域

我使用jQuery从页面的HTML中获取域:

domainUrl = $("p.domain").text();
Run Code Online (Sandbox Code Playgroud)

出于测试目的:

<p class="domain">.vl3.co.uk</p>
Run Code Online (Sandbox Code Playgroud)

这也是Im测试脚本所在的域。

然后,这会给出包含正确域的警报:

alert(domainUrl);
Run Code Online (Sandbox Code Playgroud)

我想使用该变量在Cookie中设置域:

set_cookie('visible', 'no', 2020, 1, 1, '/', '+domainUrl+');
Run Code Online (Sandbox Code Playgroud)

这是set cookie函数:

function set_cookie ( name, value, exp_y, exp_m, exp_d, path, domain, secure ) {
  var cookie_string = name + "=" + escape ( value );
  if ( exp_y ) {
    var expires = new Date ( exp_y, exp_m, exp_d );
    cookie_string += "; expires=" + expires.toGMTString();
  }
  if ( path )
    cookie_string += "; path=" + escape ( path );
  if …
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

用"&nbsp;"替换空白区域 使用Jquery

我在网上四处看看,但我找不到任何有用的东西.:(

我遇到了一个我不明白的问题.我确信我做错了什么,但我不清楚jQuery的语法,以了解我做得不对的是什么.

我正在使用JS和CSS 3的动画,并且我在单词之间有空格的麻烦,为了解决这个问题,我必须找到一种方法用其他东西替换字符串中的字符.就像一个空的空间,或者作为测试,我试图做一个" n"与" xxxxx".

我认为我在做的是:

  1. 加载页面时
  2. 使用.fancy-title包含n带有文本" xxxxx"的" " 类的类修改任何段落的字符串

所以:

$(document).ready(function(){
    for(i=0; i< myLength+1; i++){
        var charCheck = $(".fancy-title").text()[i];
        if(charCheck == "n"){
            charCheck.replace("n", "xxxxxxxx");
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误,它说:

charCheck.replace("n","xxxxxxxx"); 它不是一个功能

我正在使用jquery

和其他基于jquery的脚本来制作动画,旋转和缩放...而且它们都在HEAD中,首先加载jquery.

我究竟做错了什么?jQuery中的操作是否需要特定的.js扩展名?我明白这是jQuery的基本功能,看看其他例子都会给我带来同样的错误.

我甚至试过了

if(charCheck == "n"){
   $(".fancy-title").text()[i] == "&nbsp;"
}
Run Code Online (Sandbox Code Playgroud)

但只是修改它不适用于页面.我也尝试过innerHTML:(我感觉很无能......

预先感谢您的任何帮助.

javascript string jquery

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

我可以从Firebug的Net面板中复制网页发出的HTTP请求列表吗?

在Firebug Net面板中,您可以获取为当前页面发出的所有HTTP请求的列表.

有没有办法将此列表复制为文本,以便我可以将其粘贴到其他地方以用于我自己的记录?我正在做一些优化工作,在优化之前保存页面请求真的很方便,这样我就可以检查我的优化有什么影响.

或者,有没有其他工具能够以文本格式向我提供相同的文件信息(即请求的文件的URL,文件的大小 - 我不需要Firebug的Net面板所做的时间线的东西)作为Firebug?

testing firefox firebug http

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

如何知道你是否有一个jQuery对象

两个问题真的......

首先,当编写带有对象参数的jQuery函数时,哪个是更好的编码风格,该函数是应该使用jQuery对象还是更好地传递标准JavaScript对象并让函数本身进行包装?我想我只是问这里是否有标准,因为对于想要调用该函数的人来说,这可能并不总是显而易见的.

其次,如何测试对象是否是jQuery对象?理想情况下,如果函数可以采取任何一个会很好,所以...

function(obj) {
    var $obj;
    if (isJQuery(obj)) {
        $obj = obj;
    }
    else {
        $obj = $(obj);
    }
    // ....
}
Run Code Online (Sandbox Code Playgroud)

或者你甚至需要这样做?$(obj)如果对象已经是一个jQuery对象,它将简单地返回,所以你总是可以尝试换行并且无关紧要?

jquery

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

autodie有缺点吗?

我一次又一次地看到StackOverflow上的人们推广使用autodie.但是在这里的代码和网络的其他地方,我并不经常看到autodie.有一些缺点吗?使用autodie时我会丢失什么吗?(我有使用autodie时被宠坏的想法)

perl autodie

15
推荐指数
3
解决办法
2709
查看次数

如何在Site.Master页面上检查当前用户角色?

我需要在Site.Master中编写一个菜单,其中某些菜单项必须是可见的,具体取决于当前用户角色.如何从页面查看?通常只会在控制器中编写逻辑,但Site.Master没有(至少在我的项目中!).我很感激任何指针.

asp.net-mvc site.master

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

我应该使用什么类型的迭代器差异来消除“可能丢失数据”警告?

我需要 x64 模式下警告的通用规则。哪种方式更好?

考虑以下几行代码

const int N = std::max_element(cont.begin(), cont.end()) - cont.begin();
Run Code Online (Sandbox Code Playgroud)

或者

const int ARR_SIZE = 1024;
char arr[ARR_SIZE];
//...
const int N = std::max_element(arr, arr + ARR_SIZE) - arr;
Run Code Online (Sandbox Code Playgroud)

这是我常用的代码。我用 x86 没有任何问题。

但如果我在 x64 模式下运行编译器,我会收到一些警告:

conversion from 'std::_Array_iterator<_Ty,_Size>::difference_type' to 'int', possible loss of data
conversion from '__int64' to 'int', possible loss of data
Run Code Online (Sandbox Code Playgroud)

我想通过共同规则来解决这些问题。哪种方式更好?

  1. 制作static_cast

    const int N = static_cast<int>(
         std::max_element(cont.begin(), cont.end()) - cont.begin()  );
    
    Run Code Online (Sandbox Code Playgroud)

    我认为这不是通用的。而且字母太多。

  2. 将输出类型替换为ptrdiff_t

    const ptrdiff_t N = std::max_element(cont.begin(), cont.end()) - …
    Run Code Online (Sandbox Code Playgroud)

c++ 64-bit x86 warnings visual-studio-2010

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

如何在llvm ir代码文件中找到所有内存分配?

我试图编译这段C++代码:

void FuncTest() {
    int* a = new int;
    int* b = new int[2];
}
Run Code Online (Sandbox Code Playgroud)

使用:

clang test.cpp -S -emit-llvm -o - > test.llvm
Run Code Online (Sandbox Code Playgroud)

得到了这个:

define void @_Z8FuncTestv() {
entry:
  %a = alloca i32*, align 4
  %b = alloca i32*, align 4
  %call = call noalias i8* @_Znwj(i32 4)
  %0 = bitcast i8* %call to i32*
  store i32* %0, i32** %a, align 4
  %call1 = call noalias i8* @_Znaj(i32 8)
  %1 = bitcast i8* %call1 to i32*
  store i32* %1, …
Run Code Online (Sandbox Code Playgroud)

llvm clang

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

从托管(C#)调用不安全的代码.读字节数组

我有这个方法,我需要在我的应用程序中调用和使用,但我不知道真的知道如何完成它.

这是我需要调用的功能.

[DllImport(dll_Path)]
public static extern int DTS_GetDataToBuffer(int Position, int Length, char* Buffer, int* DataRead);
Run Code Online (Sandbox Code Playgroud)

在我的代码中,我有这个功能,我错过了它的实现.

internal static void GetDataToBuffer(int position, int length, out byte[] data, out int dataRead)
    {
        unsafe
        {
             // the code I need
        }
    }
Run Code Online (Sandbox Code Playgroud)

我认为大部分都是非常自我规划的.我需要实现后一个函数,这样我才能将数据读入缓冲区和读取的数据量(实际上应与data.Length相同,但制造商将此作为单独的选项,所以我需要它).有人可以帮忙吗?这够清楚了吗?

谢谢

编辑:这是.h文件中的非托管声明.希望能帮助到你.

 extern NAG_DLL_EXPIMP int DTS_GetDataToBuffer(int Position, 
                               int Length, 
                               unsigned char  *Buffer, 
                               int *DataRead );
Run Code Online (Sandbox Code Playgroud)

编辑#2:位置 - 星形读取数据的位置.长度 - 要读取的数据量(这将是缓冲区大小).DataRead - 读取的实际数据大小.

.net c# unsafe unmanaged

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