小编Ily*_*sov的帖子

空默认构造函数与隐式定义的不同机器代码

鉴于以下结构...

#include <type_traits>

struct C {
    long a[16]{};
    long b[16]{};

    C() = default;
};

// For godbolt
C construct() {
    static_assert(not std::is_trivial_v<C>);
    static_assert(std::is_standard_layout_v<C>);

    C c;
    return c;
}
Run Code Online (Sandbox Code Playgroud)

...海湾合作委员会(在x86-64的Linux版本的10.2)已启用优化(在所有3个级别)会产生以下汇编[1]construct

construct():
        mov     r8, rdi
        xor     eax, eax
        mov     ecx, 32
        rep stosq
        mov     rax, r8
        ret
Run Code Online (Sandbox Code Playgroud)

一旦我提供空的默认构造函数...

#include <type_traits>

struct C {
    long a[16]{};
    long b[16]{};

    C() {}  // <-- The only change
};

// For godbolt
C construct() {
    static_assert(not std::is_trivial_v<C>);
    static_assert(std::is_standard_layout_v<C>);

    C c;
    return c; …
Run Code Online (Sandbox Code Playgroud)

c++ optimization gcc x86-64 c++20

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

运行MSBuild.exe时文件记录器的可用参数是什么?

我在MSDN(参数)上阅读了MSBuild命令行参考/logger,但它绝对不够清楚.我需要一个文件记录器的可用参数列表.

msbuild

5
推荐指数
2
解决办法
6094
查看次数

Code becomes 6 times slower after doing extract method refactoring

I know micro-benchmarking is hard. I'm not trying to build a poor micro-benchmark. Rather, I have run into this problem when making (what I thought to be) harmless refactoring. There is stripped down demo of the problem below.

The program builds an ArrayList of ten thousand random integers and then finds sum of the elements. In the example, summing is repeated a million times to improve signal v. noise ratio in the measurement of elapsed time. In real program, there's …

java performance refactoring java-stream java-11

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

vb6:2D动态数组的重新定尺寸

我正在使用数组来根据它的压力存储蒸汽的属性.现在我有9个压力的属性,所以我使用的是静态数组.我想更灵活,所以我想切换到动态数组.

当我ReDim foo(1 to i, 1 to 10)在循环中使用时,我完全松开除最后一行之外的所有数据.
当我使用ReDim Preserve foo(1 to i, 1 to 10)ReDim Preserve(i,10)程序抛出错误"运行时错误'9':下标超出范围".i从1到9.

如何在不丢失数据的情况下将行/列添加到数组中?

arrays vb6 multidimensional-array dynamic-arrays

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

&lt;noscript&gt; 在 XML 文档中的处理

使用 MIME 类型text/html提供的页面与使用 MIME 类型application/xhtml+xml提供的页面的 <noscript> 块处理有什么区别吗?

据我所知,如果在浏览器中禁用了 JavaScript,则根本不会处理文本/html页面的<noscript> 块。application/xhtml+xml页面会发生什么?我怀疑对于此类页面,在禁用 JavaScript 时仍会分析该块。但我没有找到对这个问题的任何澄清。

有人可以指出我适当的 W3C 标准或提供任何其他说明吗?

附注。感兴趣的情况是访问计数服务,它使用 <noscript> 块来跟踪禁用 JS 的访问者。如果在任何情况下都下载了 <noscript> 块的元素(例如,零尺寸的图像),那么此类服务应该会中断:(

xml xhtml web-standards noscript mime-types

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

VB6可以将图像另存为JPEG吗?

注意:我不是VB6程序员-我是负责生产中使用的应用程序的Android程序员,并且我的同事负责与我的Android设备对话的VB6程序。

过去,我们的VB6程序将Microsoft .bmps发送到Android设备,但是现在我们将平板电脑添加到我们的产品列表中,并且想要发送更大的图像以利用平板电脑的额外房地产,我们发现.bmp是太大而阻塞了网络。

Eventually we're replacing the old VB6 product with a .Net one, but until we do is there any way for VB6 to programmatically convert a bitmap to a JPEG? My colleague is unaware of one but I've always found S.O. to be very useful in my domains (Android, .Net) so I thought I'd try a VB6 question here.

vb6 jpeg image bitmap

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

卸载程序在开发框上运行后保留COM注册

我的任务是构建一个C#4.0应用程序,利用旧的VB6 COM组件与另一个旧的VB6应用程序集成.该组件是为此集成而构建的,并由我的应用程序部署.

我使用Visual Studio安装项目为我的C#应用​​程序构建了一个安装程序,并将该COM组件添加到已部署文件列表中.安装程序自动注册/取消注册组件.

但是,我现在遇到的问题是,在我的开发盒上卸载应用程序之后,如果没有再次注册COM组件,我就无法调试应用程序,因为卸载取消注册了它.我并不是说卸载不应该取消注册COM组件.我只是想弄清楚一种更好的方法,确保我们仍然可以在我们的开发盒上构建和测试应用程序和安装程序,而不会带来任何不便.

PS我尝试使用a DllImport,但它从未找到入口点.根据我对研究的理解,你无法真正使用DllImportCOM组件.我希望我没有错过任何东西.

c# vb6 com installer visual-studio-2010

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

C#等效的VB字符串大于

有一个旧的vb6项目正在用C#重写,一个函数有以下代码:

If (strPlainChar >= "A" And strPlainChar <= "Z") Then
Run Code Online (Sandbox Code Playgroud)

但显然C#if语句不允许大于字符串,我该如何重新创建这段代码?

c# vb6 string-comparison vb6-migration

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

我需要在我的C#程序的VB文件中使用一个方法,如何调用这个方法?

我有一个用VB编码的文件,我需要在我的C#程序中引用和使用.我无法让我的C#程序识别我的.vb文件,以便我可以通过C#windows窗体方法向它发送变量.如何让这两个文件一起工作?我是否需要将using语句与系统方法结合使用?你有什么建议?

c# vb.net dll

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

检查单元格是否是 Excel 范围的最后一个单元格

我在MyRange范围内循环。我需要找出是否CellMyRange.

For Each Cell In MyRange.Cells        
    If Cell = ' What should I write here?
        'Do some stuff
    End If
Next Cell
Run Code Online (Sandbox Code Playgroud)

我试过这个:

If Cell = MyRange.Cells(0, MyRange.Count) Then
Run Code Online (Sandbox Code Playgroud)

但它给出了错误。

我该怎么办?

excel vba

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

为什么有些变量名在VB.net末尾有'%'或'$'符号

最近我一直在研究一个vb.net项目,它是用vs 2005写的.

我遇到了以' '和' ' 结尾的变量.%$

我的问题是它的需要和意义是什么,我尝试使用谷歌搜索,但没有找到查询的痕迹?

这里有一些来自项目的代码:

Public Sub SaveSettings(ByVal Cntl As Control, ByVal File$)
        FileNo = FOpen(File, OpenMode.Output)
        If FileNo = -1 Then Throw New System.Exception("File - " + File + " cannot be opened for writing!")
        BuildHashTable(Cntl)
        SaveControls(Cntl)
        FClose(FileNo)
    End Sub
Run Code Online (Sandbox Code Playgroud)

Dim i%, s$, t$
Run Code Online (Sandbox Code Playgroud)

变量是File $,i%,s $和t $.

我对VB6很陌生,所以我不知道它是否与之有任何关系.

.net vb.net variables naming-conventions

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

用户帐户控制对话框的可执行文件名称是否重要?

1)如果我打开一个新的vb6标准exe项目,并且不添加任何代码,只是

2)立即编译到桌面并给它一个包含"更新"一词的名称,它有一个覆盖它的UAC屏蔽.

如果我运行它,我会得到UAC对话框.

除了我的Windows Vista家庭基本计算机上的microsoft essentials,我没有防病毒软件.

如果名称中没有更新(即使只是省略字母'e'),程序对话框中没有UAC也没有屏蔽.

我想这在我的计算机上只是一个奇怪的事情,还是有一个触发UAC的单词列表?

windows vb6 installation uac

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

为什么类中的错误只在运行时被捕获?

我有一个VB6类与一个引发错误的方法:

Public Sub DoSomething
  ...
  err.Raise 12345, description:="Error message"
  ...
End Sub
Run Code Online (Sandbox Code Playgroud)

从以下形式调用此方法:

Public Sub ErrTest()
  On Error Goto err1
  obj.DoSomething
  Exit Sub
err1:
  MsgBox err.Description
End Sub
Run Code Online (Sandbox Code Playgroud)

这在运行时工作正常,但在设计时错误处理不起作用.相反,VB6 IDE显示其标准消息框,从那里我可以进入调试模式或结束程序.

为什么会这样?我能预防吗?

ide vb6 error-handling

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