我正在使用Xcode版本4.6.2.我想brew install freetds,但我遇到了一些麻烦.
我读了这个问题,但仍无法解决我的错误.
首先,这是错误:
$ brew install freetds
==> Downloading http://mirrors.ibiblio.org/freetds/stable/freetds-0.91.tar.gz
Already downloaded: /Library/Caches/Homebrew/freetds-0.91.tar.gz
==> ./configure --prefix=/usr/local/Cellar/freetds/0.91 --with-openssl=/usr/bin --with-tdsver=7.1 --mandir=/usr/local/Cellar/freetds/0.91/share/man
checking for gcc... cc
checking whether the C compiler works... no
configure: error: in `/private/tmp/freetds-prGt/freetds-0.91':
configure: error: C compiler cannot create executables
See `config.log' for more details.
Run Code Online (Sandbox Code Playgroud)
我将介绍一些系统信息.
$ brew update
Already up-to-date.
$ brew doctor
Your system is ready to brew.
$ which gcc
/usr/bin/gcc
$ which cc
/usr/bin/cc
$ gcc --version
gcc (GCC) …Run Code Online (Sandbox Code Playgroud) 在询问这个问题之前,我已经阅读了很多SO帖子,我猜这个答案就在那里,但我没有看到.我是Objective-C的新手,我正试图做一个(看似)简单的动作,我无法弄明白.
一般的想法是我有一个NSArray充满对象(特别是类型UIImageView).我想要复制那个数组,我已经做了很多种方式(都成功了).
复制后,我现在有两个数组.我想修改一个对象,比如索引2,只在副本中修改.
到目前为止似乎,因为副本只是复制引用(或指针),更改索引2处的对象将在副本和原始文件中更改它.
那有意义吗?
NSArray *originalArray = @[object1, object2];
Run Code Online (Sandbox Code Playgroud)
我尝试复制这个数组的方式,以便我可以实现我想要的:
NSMutableArray *originalArrayCopy = [NSMutableArray arrayWithArray:originalArray];
NSArray *originalArrayCopy = [originalArray copy];
NSMutableArray *originalArrayCopy = [[NSMutableArray alloc] initWithArray:originalArray];
Run Code Online (Sandbox Code Playgroud)
并且似乎在每种情况下,从副本修改对象也会在原始对象中修改它.
注意:虽然NSArray显然是不可变的,但我原始数组中的对象是可变的.