问题标签 [swap]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
1531 浏览

c++ - 继承场景中的 C++ 交换问题

我想向两个现有的 C++ 类添加交换功能。一个类继承自另一个类。我希望每个类的实例只能与同一类的实例交换。为了使其半具体化,假设我有 Foo 和 Bar 类。Bar 继承自 Foo。我定义了 Foo::swap(Foo&) 和 Bar::swap(Bar&)。Bar::swap 代表 Foo::swap。我希望 Foo::swap 仅适用于 Foo 实例,而 Bar::swap 仅适用于 Bar 实例:我不知道如何强制执行此要求。

这是给我带来麻烦的示例:

这是输出:

您可以在最终输出组中看到 f1.swap(b34) 以一种可能令人讨厌的方式“切片” b34。我希望有罪的行在运行时不编译或炸毁。由于涉及到继承,如果我使用非成员或朋友交换实现,我想我会遇到同样的问题。

如果有帮助,该代码可在键盘上找到。

出现此用例是因为我想将交换添加到 boost::multi_array 和 boost::multi_array_ref。multi_array 继承自 multi_array_ref。只有将 multi_arrays 与 multi_arrays 交换,将 multi_array_refs 与 multi_array_refs 交换才有意义。

0 投票
4 回答
1988 浏览

jquery - 使用 jQuery 进行基本图像旋转

我想测试横幅(两个 css 背景图像)并在每个页面重新加载时随机旋转它们。是否可以在不使用任何插件的情况下实现类似的功能?

我只需要旋转两个图像,这基本上只是在每次 reload时在横幅元素上随机交换 css 类

非常感谢。

0 投票
1 回答
1041 浏览

javascript - 让缩略图交换淡入淡出

我只是将自己投入到 javascript、jQuery 池中,并找到了一些可能的替代解决方案,但我想看看是否有一种方法可以使用我正在使用的现有 javascript 实现淡入/淡出。

现在是使用以下脚本在主要区域 onclick (实际站点是 onmouseover)中切换图像的缩略图:

您可以在此处看到一个基本测试:http: //www.souldesigngroup.com/client/miguel/editorial/

我尝试了多种不同的方法来实现它,并得到了一些建议,但到目前为止,它们都没有以任何形式发挥作用。所以任何想法,建议,解决方案将不胜感激。

我知道还有其他选择,我可能会求助于其中一个进行重建,但除了淡入淡出之外,它的设置和工作都很完美。

预先感谢您的任何帮助!-索伦

0 投票
5 回答
2252 浏览

c++ - 远离 Windows\C++ 中的虚拟内存

我正在编写一个对性能至关重要的应用程序,其中必须在转储到磁盘之前在物理内存中存储尽可能多的数据。

我可以使用::GlobalMemoryStatusEx(...)::GetProcessMemoryInfo(...)找出保留\空闲的物理内存百分比以及我当前进程处理的内存量。使用这些数据,我可以确保在使用约 90% 的物理内存或达到每个应用程序限制的最大 2GB 的约 90 时进行转储。

但是,我想要一种简单地接收在系统开始使用虚拟内存之前实际剩余多少字节的方法,特别是因为应用程序将同时编译为 32 位和 64 位,而 2 GB 限制不存在。

0 投票
1 回答
1537 浏览

html - 由文本鼠标悬停触发的基于 CSS 的横幅图像交换

当用户滚动菜单文本时,我希望将导航栏上方横幅上的图像背景替换为每个菜单项的特定图像。

我想要它,以便每个菜单项都会使横幅将背景交换为与每个菜单项的文本相关的图像。

我只想使用 CSS……而不是 JavaScript。

这似乎是我可以通过一些谷歌搜索找到的最接近的东西,但正如你所看到的,它与我正在寻找的有点不同:

以及与之配套的 CSS:

0 投票
3 回答
523 浏览

c - 为什么在指针指针中收集地址的交换程序不起作用?

我下面有一个程序

我正在尝试交换 list[0] 和 list[1] 的地址。

Visual Studio 2008 在运行(开始调试)此程序时产生错误。产生的错误是

ConsoleApp.exe 中 0x1029984f (msvcr90d.dll) 处的未处理异常:0xC0000005:访问冲突读取位置 0x00000044。

没有编译错误。

我可以知道为什么指向使用的指针的指针不能正常工作。也想知道为什么 void swap(char *s1,char *s2) 也没有工作。

0 投票
7 回答
4179 浏览

c++ - C编程语言函数中的切换指针

如何在函数中切换指针?

0 投票
6 回答
9703 浏览

unix - 如何在 Unix 中交换文件名?

有什么方法可以在不使用临时变量的情况下快速做到这一点?有内置功能吗?

编辑:谢谢你们的回答。看起来我需要澄清我的问题,但在大多数情况下,你们假设正确:有两个文件,文件名颠倒了。

  • 文件 A 的名称为 B-name.file
  • 文件 B 的名称为 A-name.file

我希望将文件 A 命名为 A-name.file,将文件 B 命名为 B-name.file。

我同意,这种情况并不经常发生,但它只是发生在我身上,我想要快速解决。

0 投票
7 回答
13340 浏览

c++ - 交换功能的好处?

浏览一些 C++ 问题,我经常看到这样的评论,即对 STL 友好的类应该实现一个swap函数(通常作为朋友)。有人能解释一下这带来了什么好处,STL 如何适应这一点以及为什么这个函数应该作为一个实现friend?

0 投票
4 回答
10770 浏览

iterator - 一次一个交换遍历所有排列

给定一个包含 n 个不同项目的列表,我如何逐步遍历项目的每个排列,一次只交换一对值?(我认为这是可能的,当然感觉应该是这样。)

我正在寻找的是一个迭代器,它产生下一对要交换的项目的索引,这样如果迭代 n!-1 次,它将逐步通过 n! 以某种顺序排列列表。如果再次迭代它会将列表恢复到其起始顺序,那将是一个奖励,但这不是必需的。如果所有对都将第一个(分别是最后一个)元素作为一对中的一个,那么函数只需要返回一个值,那也将是一个奖励。

示例:- 对于 3 个元素,您可以将最后一个元素与第一个和第二个元素交替交换以循环排列,即: (abc) swap 0-2 => (cba) 1-2 (cab) 0-2 ( bac) 1-2 (bca) 0-2 (acb)。

我将在 C 中实现,但可能会在大多数语言中找出解决方案。