V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Huelse  ›  全部回复第 108 页 / 共 115 页
回复总数  2289
1 ... 100  101  102  103  104  105  106  107  108  109 ... 115  
2019-07-23 09:19:39 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@guiqiqi #19
```
py::class_<uIntVector>(m, "uIntVector")
.def("__getitem__", [](const uIntVector &v, int i) {
return v[i];
}, py::keep_alive<1, 2>());

```
我这样写可以索引取值了,但还不能赋值,也没考虑切片的情况 https://ws3.sinaimg.cn/bmiddle/62e721e4gw1et02ek7u61j200k00k3y9.jpg
2019-07-23 09:12:54 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@guiqiqi #19 我想知道__getitem__,__hash__ 这样怎么写到自定义类里,请问能给个参考吗?
2019-07-23 00:26:33 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #13 我想我大概有办法了,我重新定义了一个 PYBIND11_MAKE_OPAQUE(std::vector<double>); py::class_<DoubleVector>(m, "DoubleVector"),
现在想怎么把 operator[] 加进去,方便 python 里直接 list[123]这样直接索引赋值
2019-07-23 00:25:59 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #13 我想我大概有办法了,我重新定义了一个 py::class_<DoubleVector>(m, "DoubleVector"),
现在想怎么把 operator[]加进去,方便 python 里直接 list[123]这样直接索引赋值
2019-07-22 22:41:18 +08:00
回复了 dafengchui 创建的主题 程序员 有什么好方案把油管上视频下载下来
2019-07-22 22:12:00 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #13 按文档里说的,应该是声明 std::vector<double>opaque 类型就可以了
https://pybind11.readthedocs.io/en/stable/advanced/cast/stl.html
但是,我不知道为啥,还是不行。
2019-07-22 22:05:01 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #13
就是我 list 变量放进函数里进行操作,按照 Python 的内存管理,显然不会对函数外的 list 产生影响

现在我想在不改变 c++代码的情况下,通过 pybind11 绑定完成 list 变量生成
2019-07-22 18:01:52 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #11 我是想不改 c++代码可以吗

destination = []
func(destination) { ... }
destination = [...]

类似于这样
2019-07-22 17:48:50 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #9 嗯嗯,了解,我现在想另一个问题

@guiqiqi #8 想请你们看下

```
template<typename T,
typename = std::enable_if_t<std::is_same<T, double>::value ||
std::is_same<T, std::complex<double>>::value>>
inline void decode(const Plaintext &plain, std::vector<T> &destination,
MemoryPoolHandle pool = MemoryManager::GetPool())
{
decode_internal(plain, destination, std::move(pool));
}
```
这种 template 怎么绑定
是参照这个嘛?

https://github.com/pybind/pybind11/blob/master/tests/test_opaque_types.cpp

https://github.com/pybind/pybind11/issues/1854
2019-07-22 17:44:41 +08:00
回复了 marcademic 创建的主题 程序员 万年老题,想换笔记本 XPS/T480/X1C,求推荐。
追求续航可以 i5,但推荐 i7,美版是必须的
2019-07-22 16:53:20 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@guiqiqi #5 还是要改 c++代码吧?
2019-07-22 16:19:00 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #3 试过了,不可行,def_property 需要 set 和 get,c++里没有,def_readwrite 会说 scale 是私有的
2019-07-22 13:46:17 +08:00
回复了 Huelse 创建的主题 Python C++中对函数赋值,怎么在 Python 实现?
@ysc3839 #1 嗯嗯,最后我还是在 Ciphertext 类里增加了一个 set_scale 方法 https://ws3.sinaimg.cn/bmiddle/62e721e4gw1et02ek7u61j200k00k3y9.jpg ,谢谢
2019-07-22 12:24:12 +08:00
回复了 Huelse 创建的主题 C++ 请问这样的 C++函数如何用 pybind11 绑定?
@wutiantong #15
啊,再打扰下,这种 template 该怎么绑定呢?

我已包含#include <pybind11/complex.h>
```
template<typename T,
typename = std::enable_if_t<std::is_same<T, double>::value ||
std::is_same<T, std::complex<double>>::value>>
inline void decode(const Plaintext &plain, std::vector<T> &destination,
MemoryPoolHandle pool = MemoryManager::GetPool())
{
...
}
```

虽然我把 T 替换成 double 类型可以编译成功,但使用中,函数并不能对这个 vector 做出修改
``` error
.def("decode", (void (CKKSEncoder::*)(const Plaintext &, std::vector<double> &, MemoryPoolHandle)) &CKKSEncoder::decode)
```
谢谢!
2019-07-20 17:19:51 +08:00
回复了 VDimos 创建的主题 程序员 B 站客户端的谜一样的改动
@misaka19000 #5 规则吧?别乱喷
2019-07-19 18:45:53 +08:00
回复了 dididaren 创建的主题 Python 奇葩了, requests 必须通过 charles 才能访问网络,求救
如果是 win10,检查设置-网络-代理 里面的设置,
如果是 mac,可能也有类似的网络设置
2019-07-19 18:36:43 +08:00
回复了 Huelse 创建的主题 SSD 我需要买个新的固态硬盘,等推荐
@ShunYea #91 悬
2019-07-19 18:36:31 +08:00
回复了 Huelse 创建的主题 SSD 我需要买个新的固态硬盘,等推荐
@jsnjfz #90 这个我知道,我第一个 m.2 是 nvme 协议,现在用的三星 pm961 256g,第二个不是,不过问题不大,应该换下也能用
2019-07-19 15:17:53 +08:00
回复了 Huelse 创建的主题 SSD 我需要买个新的固态硬盘,等推荐
@coolmint #84
@AlexEcho #88
@realpg #83
@palibox #82
还有很多就不一一艾特了

诸位,我突然想买个 jd 上的雷克沙试试水 https://ws1.sinaimg.cn/large/b64a58e3gy1fikro1qf4lj200k00k3y9.jpg ,有谁能阻拦我下吗
1 ... 100  101  102  103  104  105  106  107  108  109 ... 115  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1093 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 22:54 · PVG 06:54 · LAX 14:54 · JFK 17:54
Developed with CodeLauncher
♥ Do have faith in what you're doing.