小编kai*_*wei的帖子

(mach-o 文件,但架构不兼容(有“arm64”,需要“x86_64”))

当我在 Macbook Air M1 上运行 .py 文件时遇到问题:

[Running] python3 -u "/Users/kaiyuwei/Documents/graduation project/metaheuristics/run_CRO.py"
Traceback (most recent call last):
  File "/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/__init__.py", line 23, in <module>
    from . import multiarray
  File "/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/multiarray.py", line 10, in <module>
    from . import overrides
  File "/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/overrides.py", line 6, in <module>
    from numpy.core._multiarray_umath import (
ImportError: dlopen(/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/_multiarray_umath.cpython-38-darwin.so, 0x0002): tried: '/Users/kaiyuwei/Library/Python/3.8/lib/python/site-packages/numpy/core/_multiarray_umath.cpython-38-darwin.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/kaiyuwei/Documents/graduation project/metaheuristics/run_CRO.py", …
Run Code Online (Sandbox Code Playgroud)

python macos x86 importerror apple-silicon

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

析构函数会删除内置类型和指针对象吗?

我是 C++ 初学者,现在正在阅读 C++ Primer。我对析构函数有一些问题:

\n
    \n
  1. 第 13.1.3 章:“在析构函数中,没有类似于构造函数初始值设定项列表的内容来控制如何销毁成员;销毁部分是隐式的。销毁成员时会发生什么取决于成员的类型。类类型通过运行member\xe2\x80\x99s自己的析构函数来销毁。内置类型没有析构函数,因此不会执行任何操作来销毁内置类型的成员。”

    \n

    所以如果我有这样的课程:

    \n
  2. \n
\n
class Foo {\n  ~Foo() { delete pi; }\n  int *pi;\n  int i;\n}; \n
Run Code Online (Sandbox Code Playgroud)\n

当 的实例Foo要被销毁时,根据上面的文字,内置类型变量int i不会被销毁吗?那么既然它所属的对象已经被破坏了,它又将如何存在。

\n
    \n
  1. 在第13.1.4章中:“我们在练习中使用的HasPtr类是一个很好的例子(\xc2\xa7 13.1.1,p.499)。该类在其构造函数中分配动态内存。合成的析构函数不会删除作为指针的数据成员。因此,该类需要定义一个析构函数来释放其构造函数分配的内存。

    \n

    我知道合成析构函数不会取消分配new普通指针已分配并指向的内存,但在文本中,它表明指针对象本身也不会被合成指针删除。仍然是 class 的例子Foo,这是否意味着在一个对象之后Fooclass的对象被销毁后,指针pi不会被销毁(因此变成无效指针)?

    \n
  2. \n
\n

c++ memory pointers destructor class

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

标签 统计

apple-silicon ×1

c++ ×1

class ×1

destructor ×1

importerror ×1

macos ×1

memory ×1

pointers ×1

python ×1

x86 ×1