小编Chr*_*_vr的帖子

类模板和函数模板之间的区别

我想知道类模板和函数模板之间的区别,我应该在哪里使用它们.

c++ templates

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

调用window.open()在IE 11 + Windows 8.1 Preview上返回null

我正在做这样的事情,其中​​MyConfig是一个aspx页面.

   winOpen=window.open('/Account/Register','MyConfig','toolbar=no,status=no,location=no,menubar=0,resizable=yes,scrollbars=yes,width=' + wWidth + ',height='+ wHeight + ',top=' + wTop + ',left=' +wLeft);
Run Code Online (Sandbox Code Playgroud)

winOpen.focus();

它返回null.它在chrome + WIndows 8.1预览中工作正常,但它在IE 11中不起作用.

编辑

我加入的问题多了一个线,实际上,因为window.open该行失败()返回null,所以是winOpen.focus().我转向兼容模式,且比现在推出的网页它给我相同的网页错误,但我能够导航到该页面.我希望它在没有兼容模式设置的情况下工作.用户可能不知道该设置.

javascript asp.net-mvc internet-explorer windows-8.1

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

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

包含STL头文件的问题

我在MFC(VS 2008)中创建了基于Dialog的应用程序.当我在Dlg.cpp中执行"#include"时,它显示以下错误.

VS 2008安装中是否缺少某些组件

c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory(43) : 
error C2665: 'operator new' : none of the 5 overloads could convert all the argument types

1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\new.h(85): could be 'void *operator new(size_t,const std::nothrow_t &) throw()'

1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\new.h(93): or       'void *operator new(size_t,void *)'

1>        while trying to match the argument list '(const char [70], int)'

1>        c:\program files (x86)\microsoft visual studio 9.0\vc\include\xmemory(145) : see reference to function template instantiation …
Run Code Online (Sandbox Code Playgroud)

c++ stl

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

stl :: map erase vs std :: vector erase表现不同

 class CSensor
 {
    public:
    CSensor(int nVal1,char* pVal2,unsigned int nVal3);
    CSensor(const CSensor& refMessage);
    const CSensor& operator=(const CSensor& refMessage);
   ~CSensor(void);
   private:
   int m_nVal1;
   char* m_pVal2;   
   unsigned int m_nVal3;
 };

 // vector erase

 std::vector<CSensor> SensorList;
 CSensor obj1(1,"Test1",10);
 SensorList.push_back(obj1);
 CSensor obj2(2,"Test2",11);
 SensorList.push_back(obj2);
 CSensor obj3(3,"Test3",12);
 SensorList.push_back(obj3);

 SensorList.erase (SensorList.begin()+1);



// map erase
    std::map<int ,CSensor> ListSensor;
CSensor obj11(1,"Test1",10);    
CSensor obj12(2,"Test2",11);
CSensor obj13(3,"Test3",12);

ListSensor.insert(std::pair<int,CSensor>(1,obj11));
ListSensor.insert(std::pair<int,CSensor>(2,obj12));
ListSensor.insert(std::pair<int,CSensor>(3,obj13));

ListSensor.erase(2);
Run Code Online (Sandbox Code Playgroud)

我调试了这两种情况.在这两种情况下我都删除第二个元素.在向量的情况下,它将3个元素复制到第二个位置,而不是它删除第三个位置.

所以,当你说

   List.erase (List.begin()+1);
Run Code Online (Sandbox Code Playgroud)

它调用赋值运算符(CSensor =)然后调用析构函数.

如果是地图我什么时候

   ListSensor.erase(2);
Run Code Online (Sandbox Code Playgroud)

它只调用析构函数.

我已经通过STL矢量vs地图擦除.它谈论Iterator,无法解释行为.

我的问题是为什么这两个STL容器的擦除行为不同?

c++ stl

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

将ULARGE_INTEGER QuadPart转换为毫秒

我在网上找到了这个代码.我需要将时间转换为毫秒.我无法找出QuadPart代表什么.这个值是毫秒或纳秒.

帮我将QuadPart值转换为毫秒.

SYSTEMTIME st;
GetSystemTime(&st);

FILETIME ft;
SystemTimeToFileTime(&st, &ft);  // converts to file time format
ULARGE_INTEGER ui;
ui.LowPart=ft.dwLowDateTime;
ui.HighPart=ft.dwHighDateTime;

// ui.QuadPart;
Run Code Online (Sandbox Code Playgroud)

c++ winapi

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

未捕获的TypeError:无法在Native Messaging App中调用方法'connectNative'

我正在使用本机消息传递应用程序.我创建了以下文件

1.C++ conole app 2.JS文件3. manifet文件我已经创建了这样的注册表项 在此输入图像描述

现在我在行port = chrome.runtime.connectNative(hostName)中收到错误; 我注意到chrome.runtime本身是undefined.let我知道我在这里遗漏了什么.

Manifest.jason

function connect() {
  //var m1 = chrome.runtime.getManifest();
  var hostName = "NM1";
  var t1 = chrome;
  appendMessage("Connecting to native messaging host <b>" + hostName + "</b>")    

  port = chrome.runtime.connectNative(hostName);
  port.onMessage.addListener(onNativeMessage);
  port.onDisconnect.addListener(onDisconnected);
  updateUiState();
}
Run Code Online (Sandbox Code Playgroud)

main.js

function connect() {
  //var m1 = chrome.runtime.getManifest();
  var hostName = "NM1";  
  appendMessage("Connecting to native messaging host <b>" + hostName + "</b>")

  port = chrome.runtime.connectNative(hostName);
  port.onMessage.addListener(onNativeMessage);
  port.onDisconnect.addListener(onDisconnected);
  updateUiState();
}
Run Code Online (Sandbox Code Playgroud)

google-api google-apps google-chrome-extension google-chrome-app chrome-native-messaging

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

从输出中删除列标题

我正在运行以下命令,输出如下所示

和新星列表

 +--------------------------------------+---------------------------------------------------------------------+----------------+--------------------------------------------------+
| id                                   | name                                                                | cidr           | allocation_pools                                 |
+--------------------------------------+---------------------------------------------------------------------+----------------+--------------------------------------------------+
| 1865fd7d-8971-4b2a-aaa3-c810189c2363 | test-inter-netwk                                                    | 192.168.1.0/24 | {"start": "192.168.1.2", "end": "192.168.1.254"} |
| 20214812-48f9-4938-bbd3-1b54cd796425 | App-Mgmt-subnet                                                     | 10.20.0.0/24   | {"start": "10.20.0.2", "end": "10.20.0.254"}     |
| 7ab22397-e6a9-4a3d-96f0-9ebbce638f1e | vms2.1-net                                                          | 192.168.0.0/24 | {"start": "192.168.0.2", "end": "192.168.0.254"} |
| 8f97fc5e-53c6-4f29-9e4e-04f38a283452 | ddddd                                                               | 10.24.0.0/24   | {"start": "10.24.0.2", "end": "10.24.0.254"}     |
| 990b338c-c980-456e-ade1-fc1a90f233e5 | Orch-Mgmt-subnet                                                    | 10.32.1.0/24   | {"start": "10.32.1.2", "end": "10.32.1.254"}     |
| f386aca1-4c18-4b8e-9df7-a70111dea849 | TRANSIT-NEXTIP-Skyfall-eb07721aa407423e83e9641855f51e35-mseg-SUBNET | 10.22.0.0/24   | …
Run Code Online (Sandbox Code Playgroud)

shell awk grep sed

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

md5sum shell 脚本和 python hashlib.md5 不同

我正在比较两个不同位置的两个 qcow2 图像文件以查看差异。/opt/images/file.qcow2 /mnt/images/file.qcow2

当我跑

md5sum /opt/images/file.qcow2 
md5sum  /mnt/images/file.qcow2
Run Code Online (Sandbox Code Playgroud)

两个文件的校验和相同

但是当尝试使用以下代码找到 md5sum 时

def isImageLatest(file1,file2):
    print('Checking md5sum of {} {}'.format(file1, file2))

    if os.path.isfile(file1) and os.path.isfile(file2):
        md5File1 = hashlib.md5(file1).hexdigest()
        md5File2 = hashlib.md5(file2).hexdigest()
        print('md5sum of {} is {}'.format(file1, md5File1))
        print('md5sum of {} is {}'.format(file2, md5File2))
    else:
        print('Either {} or {} File not found'.format(file1,file2))
        return False

    if md5File1 == md5File2:
        return True
    else:
        return False
Run Code Online (Sandbox Code Playgroud)

它说校验和不一样

更新 文件大小可以为 8 GB

python shell

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

从熊猫数据框中删除重复的列值

我有以下熊猫数据框。这里 field1, field2... 总是可变的,而 col1, col2 ....coln 大部分是恒定的并且很少变化。最终,我将其保存为镶木地板格式。镶木地板在内部优化了重复项,这不是问题。

我有另一个要求将它从 parquet 转换为 csv。csv 文件大小正在上升。所以我想在将其保存在镶木地板之前删除重复项。通过代码执行此操作会增加时间,因为可能有 70-100 个这样的列。

date                          field1 field2 col1 col2 col3 col5
20200508062904.8340+0530       11       22      2     3    3   4
20200508062904.8340+0530       12       23      2     3    3   4
20200508062904.8340+0530       13       22      2     3    3   4
20200508062904.8340+0530       14       24      2     3    3   4
20200508051804.8340+0530       14       24      2     3    3   5
20200508051804.8340+0530       14       24      2     4    3   4
20200508051804.8340+0530       14       24      2     3    3   4
Run Code Online (Sandbox Code Playgroud)

对于列 (col1 col2 col3 col5),我想保留初始值并删除重复的重复值。如果这些列在稍后的某个时间点具有与初始值不同的值,则数据帧应保留它。初始值是相对的,并且等于前一个最新值。

预期产出

 date                          field1 field2 …
Run Code Online (Sandbox Code Playgroud)

python pandas

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