将字符串数组中的各个字符strArr分成这些字符数组的最佳方法是什么charArr,如下所示?
string[] strArr = { "123", "456", "789" };
char[] chrArr = { '1', '2', '3', '4', '5', '6', '7', '8', '9' };
Run Code Online (Sandbox Code Playgroud)
这就是我目前正在做的事情,但我认为它不是很优雅:
int characterCount = 0;
for (int i = 0; i < strArr.Length; i++)
{
characterCount += strArr[i].Length;
}
int indexCount = 0;
char[] chrArr = new char[characterCount];
for (int i = 0; i < strArr.Length; i++)
{
for (int j = 0; j < strArr[i].Length; j++)
{
chrArr[indexCount] = strArr[i][j];
indexCount++;
} …Run Code Online (Sandbox Code Playgroud) 这两者有什么区别?
class Class1
{
public int a = 1;
}
class Class2
{
public int a;
public Class2()
{
a = 1;
}
}
Run Code Online (Sandbox Code Playgroud)
如果没有,我可以跳过默认构造函数并初始化我的变量Class1吗?
假设我有一个标有列的表Name,其中包含(可能)重复的唯一用户名条目.什么LINQ到SQL语句,我可以写穿越唯一的用户名?换一种说法:
以下是该表的示例:
Name Log
User1 05/13/13
User2 05/13/13
User2 05/14/13
User3 05/15/13
User1 05/15/13
Run Code Online (Sandbox Code Playgroud)
我想要唯一地选择用户名:
User1, User2, User3.
Run Code Online (Sandbox Code Playgroud)
提前致谢!
我知道财产有以下形式:
class MyClass
{
public int myProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这允许我这样做:
MyClass myClass = new MyClass();
myClass.myProperty = 5;
Console.WriteLine(myClass.myProperty); // 5
Run Code Online (Sandbox Code Playgroud)
但是,我可以做以下课程:
class MyOtherClass
{
public int[,] myProperty
{
get
{
// Code here.
}
set
{
// Code here.
}
}
}
Run Code Online (Sandbox Code Playgroud)
行为如下:
/* Assume that myProperty has been initialized to the following matrix:
myProperty = 1 2 3
4 5 6
7 8 9
and that the access order is [row, column]. */ …Run Code Online (Sandbox Code Playgroud) 如果我没有弄错,用C++编写类的传统方法如下(这只是一个说明性的例子):
MyClass.h
// MyClass.h
#ifndef MY_CLASS_H
#define MY_CLASS_H
class MyClass
{
public:
MyClass();
MyClass(int);
void method1(int);
int method2();
private:
int field;
};
#endif
Run Code Online (Sandbox Code Playgroud)
MyClass.cpp
// MyClass.cpp
#include "MyClass.h"
MyClass::MyClass()
{
field = 0;
}
MyClass::MyClass(int n)
{
field = n;
}
void MyClass::method1(int n)
{
field = n;
}
int MyClass::method2()
{
return field;
}
Run Code Online (Sandbox Code Playgroud)
main.cpp中
// main.cpp
#include <iostream>
#include "MyClass.h"
using namespace std;
int main()
{
MyClass mc;
mc.method1(2);
cout << mc.method2();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这个项目的传统C#等价物是什么?此外,如果我在上面的例子中错误地描绘了传统上正确的C++,请修复它以帮助防止混淆未来的读者.