小编HoK*_*y22的帖子

任何人都可以向我解释IEnumerable和IEnumerator吗?

任何人都可以向我解释IEnumerable和IEnumerator吗?

例如,什么时候在foreach上使用它?IEnumerable和IEnumerator之间有什么区别?为什么我们需要使用它?

c# ienumerable ienumerator

256
推荐指数
11
解决办法
19万
查看次数

使用scp将文件复制到Amazon EC2实例?

我正在尝试使用我的Mac终端将下载文件(我在线下载的phpMyAdmin)中的文件scp到我的Amazon EC2实例.

我使用的命令是:

scp -i myAmazonKey.pem phpMyAdmin-3.4.5-all-languages.tar.gz  hk22@mec2-50-17-16-67.compute-1.amazonaws.com:~/.
Run Code Online (Sandbox Code Playgroud)

我得到的错误: 警告:身份文件myAmazonKey.pem无法访问:没有这样的文件或目录.权限被拒绝(publickey).失去了连接

我的myAmazonkey.pem和phpMyAdmin-3.4.5-all-languages.tar.gz都在下载中,所以我试过

scp -i /Users/Hello_Kitty22/Downloads/myAmazonKey.pem /Users/Hello_Kitty22/Downloads/phpMyAdmin-3.4.5-all-languages.tar.gz  hk22@mec2-50-17-16-67.compute-1.amazonaws.com:~/.
Run Code Online (Sandbox Code Playgroud)

和我得到的错误: 警告:身份文件/User/Hello_Kitty22/Downloads/myAmazonkey.pem无法访问:没有这样的文件或目录.权限被拒绝(publickey).失去了连接

谁能告诉我如何解决我的问题?

ps有一个类似的帖子:scp(安全复制)到ec2实例没有密码, 但它没有回答我的问题.

terminal scp copy amazon-ec2 public-key

183
推荐指数
12
解决办法
26万
查看次数

递归获取类的属性和子属性

我正在做一些像递归获取对象的属性和子属性的东西 ,但我想以递归方式使用反射来获取每个属性.我从递归打印属性中获取代码.

代码的问题是:它只降低了一级,我想知道如何使用反射自动获取所有属性?我刚刚编写了以下示例Container代码:

public class Container
{
    public Bottle MyBottle { get; set; }
    public List<Address> Addresses { get; set; }

    public Container()
    {
        Address a = new Address();
        a.AddressLine1 = "1 Main St";
        a.AddressLine2 = "2 Main St";
        Addresses = new List<Address>();
        Addresses.Add(a);

        MyBottle = new Bottle();
        MyBottle.BottleName = "Big bottle";
        MyBottle.BottageAge = 2;
    }
}

public class Bottle
{
    public string BottleName { get; set; }
    public int BottageAge { get; set; }
} …
Run Code Online (Sandbox Code Playgroud)

c# reflection recursion

33
推荐指数
2
解决办法
4万
查看次数

CString::GetBuffer() 示例

我试图理解 GetBuffer() 函数。看起来它返回指向 CString 的指针,这在msdn GetBuffer() 中得到确认 。但是,我不明白msdn GetBuffer() 中显示的示例。

LPTSTR p = s.GetBuffer( 10 );
Run Code Online (Sandbox Code Playgroud)

里面是10有什么原因吗?谁能告诉我这个例子的输出?

c++ msdn getbuffer

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

如何关闭IIS工作进程

我试图在我的机器上安装Visual Studio 2008 SP1,但我遇到了这个问题. 问题截图

我查了一下,看起来IIS Worker Process是某种 w3wp.exe,所以我查看了我的Windows任务管理器,发现w3wp.exe没有运行.我还在IIS管理器中查看了我的工作进程,但它也没有启动.那么,我如何关闭这个应用程序,以便我可以继续安装或者还有其他我可以做的事情?

iis worker-process w3wp visual-studio-2008-sp1

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

在vb6中使用RegEx

我需要验证一个字符串,它可能包含字母数字和特殊字符,因为我必须传递只有Alpha字符的字符串(不允许使用数字或任何其他特殊字符)

在当前的方法中,我使用ASCII数字来评估每个字符是否为alpha.有没有其他有效的方法来发现字符串中是否存在特殊字符或数字?就像我们不能使用Like或者其他东西来检查一次而不是逐个字符?

For y = 2 To Len(sString)
    If Not ((Asc(Mid$((sString,y,1))>64 AND Asc(Mid$((sString,y,1))<91) OR _
    (Asc(Mid$((sString,y,1))>96 AND Asc(Mid$((sString,y,1))<123)) Then
        //Display an error msg
        Exit For
    End If
Next y
Run Code Online (Sandbox Code Playgroud)

regex vb6

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

class没有成员"operator <<"

我已经通读了运算符<<被实现为朋友还是作为成员函数?C++中的重载插入运算符看起来像是类似的问题,但没有解决我自己的问题.

我的头文件:

using namespace std;

class Animal {
private: 
    friend ostream & operator<< (ostream & o, Dog & d);
    int number;
public:
    Animal(int i);
    int getnumber();

};

ostream & operator<< (ostream & o, Dog & d);
Run Code Online (Sandbox Code Playgroud)

我的cpp:

using namespace std;

int Animal::getnumber(){
    return number;
}

ostream & Animal::operator<< (ostream & o, Dog & d){
    //...
}

Animal::Animal(int i) : number(i){}
Run Code Online (Sandbox Code Playgroud)

实现很简单,但我收到错误:在cpp中 - 错误:类"Animal"类没有成员"operator <<".我真的没有得到它,因为我已经在Animal中将插入操作符声明为朋友,为什么我仍然会收到此错误?(把ostream放在公共场合并没有帮助)

c++ ostream insertion

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

在成员变量后面加一个括号来初始化?

我看到人们在初始化列表中的成员变量后放置一个括号.我想知道为什么人们这样做?

例如,我在头文件中有一个STL容器:

class A{
public: 
    A();
    ...
private: 
    vector<string> v;
}
Run Code Online (Sandbox Code Playgroud)

在源文件中:

A::A() : v() {}
Run Code Online (Sandbox Code Playgroud)

我的问题是什么是v()以及为什么人们这样做,因为看起来v看起来不像是初始化为值

c++ initialization member-variables

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

next_permutation在函数中调用后有不同的结果

如果我有:

bool shuffle(string s){
    return next_permutation(s.begin(), s.end());
}

int main(int argc, char* argv[]){    
        string m = "abcde5";
    do {
        cout << m << endl;
    } while(shuffle(m));
Run Code Online (Sandbox Code Playgroud)

我会得到:

abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 abcde5 ... abced5

不是我想要的

但是,如果我这样做:

int main(int argc, char* argv[]){    
string m = "abcde5";
do {
    cout << m << endl;
} while(next_permutation(m.begin(), m.end()));  
Run Code Online (Sandbox Code Playgroud)

我会的

abcde5 abce5d …

c++ stl

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

初始化和设置向量<int>

vector<int> v;
v.push_back(0); //you have to do this
//v[0] = 0;     //this gives you an error
v[0] = 1000000; //but now you can set it
Run Code Online (Sandbox Code Playgroud)

那么,为什么第一次初始化一个向量时,你需要push_back,之后你可以设置它吗?对于基本类型,比如int,你可以做int i = 0; 用于初始化.

c++ initialization vector

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

内存运行时错误:我们在哪里删除此指针

在下面的四种方法中,我们应该做的更好.我们想在这里进行动态分配以避免错误的函数返回.但是,我们在哪里删除f?删除调用better()的函数?但在这种情况下再也没有了.

Foo *bad() {
  Foo f;
  return &f;
}

Foo &alsoBad() {
  Foo f;
  return f;
}

Foo mediocre() {
  Foo f;
  return f;
}

Foo * better() {
  Foo *f = new Foo;
  return f;
}
Run Code Online (Sandbox Code Playgroud)

c++ pointers memory-leaks

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

在C++中调用类的静态函数

我现在正在编写很多java,所以我对java 静态方法和c ++ 静态函数感到困惑.

在java中,你可以从类中调用静态方法,我经常使用/看到它,例如:

public class A{
    public void static b(){
        System.out.println("hello");
    }
}
Run Code Online (Sandbox Code Playgroud)

你能做到,A.b();你能用C++做到吗?如果是这样,与在java中这样做相比,它不是那么受欢迎吗?

c++ java static-methods

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